2017-04-12 01:20:16 -04:00
# Project Based Learning
2017-04-28 01:20:38 -04:00
A list of programming tutorials in which learners build an application from scratch. These tutorials are divided into different primary programming languages. Some have intermix technologies and languages.
2017-04-28 01:32:31 -04:00
To get started, simply fork this repo. Please refer to [CONTRIBUTING.md ](CONTRIBUTING.md ) for contribution guidelines.
2017-04-12 01:20:16 -04:00
## Table of Contents:
2017-10-21 16:12:20 -04:00
2018-04-20 16:00:08 +01:00
* [C# ](#c )
* [C/C++ ](#cc )
2017-05-10 23:57:12 +01:00
* [Clojure ](#clojure )
2017-07-14 01:40:50 -05:00
* [Elixir ](#elixir )
2018-04-20 15:48:45 +01:00
* [Go ](#go )
* [Haskell ](#haskell )
2018-04-23 01:10:24 +05:30
* [HTML/CSS ](#html-and-css )
2017-05-02 02:02:55 -04:00
* [Java ](#java )
2017-04-12 01:20:16 -04:00
* [JavaScript ](#javascript )
2017-05-24 23:52:45 -04:00
* [Kotlin ](#kotlin )
2018-04-16 07:54:41 +03:00
* [Lua ](#lua )
2017-10-21 19:11:25 -04:00
* [OCaml ](#ocaml )
2018-04-20 15:48:45 +01:00
* [PHP ](#php )
* [Python ](#python )
2017-05-02 05:53:22 -04:00
* [R ](#r )
2018-04-20 15:48:45 +01:00
* [Ruby ](#ruby )
2017-04-12 02:19:02 -04:00
* [Rust ](#rust )
2017-05-23 10:02:40 -04:00
* [Swift ](#swift )
2017-04-28 15:45:54 -04:00
* [Additional resources ](#additional-resources )
2017-04-12 01:20:16 -04:00
2017-04-12 01:38:44 -04:00
## C/C++:
2017-10-21 16:12:20 -04:00
2018-04-17 11:55:25 -04:00
* [Build an Interpreter ](http://www.craftinginterpreters.com/ ) (Chapter 14 on is written in C)
2017-04-12 01:20:16 -04:00
* [Write a Shell in C ](https://brennan.io/2015/01/16/write-a-shell-in-c/ )
2018-03-15 11:39:38 -04:00
* [Write a FUSE Filesystem ](https://www.cs.nmsu.edu/~pfeiffer/fuse-tutorial/ )
2017-04-12 01:20:16 -04:00
* [Build Your Own Text Editor ](http://viewsourcecode.org/snaptoken/kilo/ )
* [Build Your Own Lisp ](http://www.buildyourownlisp.com/ )
2017-08-13 23:16:03 -04:00
* [How to Program an NES Game in C ](https://nesdoug.com/ )
2017-04-12 01:31:55 -04:00
* [Write an OS from scratch ](https://github.com/tuhdo/os01 )
2017-04-29 02:44:18 -04:00
* [How to Write an Emulator (CHIP-8 interpreter) ](http://www.multigesture.net/articles/how-to-write-an-emulator-chip-8-interpreter/ )
2017-07-07 01:03:00 -04:00
* [Beginning Game Programming with C++ and SDL ](http://lazyfoo.net/tutorials/SDL/ )
2017-08-31 00:57:59 -04:00
* [Implementing a Key-Value Store ](http://codecapsule.com/2012/11/07/ikvs-implementing-a-key-value-store-table-of-contents/ )
2017-07-07 01:01:50 -04:00
* Let's Code a TCP/IP Stack
2017-10-21 16:12:20 -04:00
* [Part 1: Ethernet & ARP ](http://www.saminiir.com/lets-code-tcp-ip-stack-1-ethernet-arp/ )
* [Part 2: IPv4 & ICMPv4 ](http://www.saminiir.com/lets-code-tcp-ip-stack-2-ipv4-icmpv4/ )
* [Part 3: TCP Basics & Handshake ](http://www.saminiir.com/lets-code-tcp-ip-stack-3-tcp-handshake/ )
* [Part 4: TCP Data Flow & Socket API ](http://www.saminiir.com/lets-code-tcp-ip-stack-4-tcp-data-flow-socket-api/ )
* [Part 5: TCP Retransmission ](http://www.saminiir.com/lets-code-tcp-ip-stack-5-tcp-retransmission/ )
2018-01-14 23:33:08 +07:00
* Writing a minimal x86-64 JIT compiler in C++
* [Part 1 ](https://solarianprogrammer.com/2018/01/10/writing-minimal-x86-64-jit-compiler-cpp/ )
* [Part 2 ](https://solarianprogrammer.com/2018/01/12/writing-minimal-x86-64-jit-compiler-cpp-part-2/ )
* [Part 3 ](https://solarianprogrammer.com/2018/01/12/writing-minimal-x86-64-jit-compiler-cpp-part-3/ )
2017-07-11 04:01:41 +01:00
* [Build a Live Code-reloader Library for C++ ](http://howistart.org/posts/cpp/1/index.html )
2017-08-24 18:44:32 +01:00
* [Write a hash table in C ](https://github.com/jamesroutley/write-a-hash-table )
2017-10-03 13:07:49 +07:00
* [Let's Build a Simple Database ](https://cstack.github.io/db_tutorial/ )
2017-10-21 19:06:07 -04:00
* [Let's Write a Kernel ](http://arjunsreedharan.org/post/82710718100/kernel-101-lets-write-a-kernel )
2017-10-21 19:06:55 -04:00
* [Write a Bootloader in C ](http://3zanders.co.uk/2017/10/13/writing-a-bootloader/ )
2017-11-03 14:50:03 -04:00
* [Linux Container in 500 Lines of Code ](https://blog.lizzie.io/linux-containers-in-500-loc.html )
2018-01-14 23:36:28 +07:00
* Write a C compiler
2018-04-16 19:12:14 -04:00
* [Part 1: Integers, Lexing and Code Generation ](https://norasandler.com/2017/11/29/Write-a-Compiler.html )
2018-01-14 23:36:28 +07:00
* [Part 2: Unary Operators ](https://norasandler.com/2017/12/05/Write-a-Compiler-2.html )
* [Part 3: Binary Operators ](https://norasandler.com/2017/12/15/Write-a-Compiler-3.html )
* [Part 4: Even More Binary Operators ](https://norasandler.com/2017/12/28/Write-a-Compiler-4.html )
* [Part 5: Local Variables ](https://norasandler.com/2018/01/08/Write-a-Compiler-5.html )
2018-04-16 19:12:14 -04:00
* [Part 6: Conditionals ](https://norasandler.com/2018/02/25/Write-a-Compiler-6.html )
* [Part 7: Compound Statements ](https://norasandler.com/2018/03/14/Write-a-Compiler-7.html )
* [Part 8: Loops ](https://norasandler.com/2018/04/10/Write-a-Compiler-8.html )
2017-10-21 19:09:39 -04:00
* [Implementing a Language with LLVM ](https://llvm.org/docs/tutorial/#kaleidoscope-implementing-a-language-with-llvm )
2017-04-12 01:20:16 -04:00
2018-04-19 16:00:22 +03:00
### OpenGL:
2018-04-20 10:45:04 +05:30
* Creating 2D Breakout game clone in C++ with OpenGL
* [Breakout ](https://learnopengl.com/In-Practice/2D-Game/Breakout )
* [Setting up ](https://learnopengl.com/In-Practice/2D-Game/Setting-up )
* [Rendering Sprites ](https://learnopengl.com/In-Practice/2D-Game/Rendering-Sprites )
* [Levels ](https://learnopengl.com/In-Practice/2D-Game/Levels )
* Collisions
* [Ball ](https://learnopengl.com/In-Practice/2D-Game/Collisions/Ball )
* [Collision detection ](https://learnopengl.com/In-Practice/2D-Game/Collisions/Collision-detection )
* [Collision resolution ](https://learnopengl.com/In-Practice/2D-Game/Collisions/Collision-resolution )
* [Particles ](https://learnopengl.com/In-Practice/2D-Game/Particles )
* [Postprocessing ](https://learnopengl.com/In-Practice/2D-Game/Postprocessing )
* [Powerups ](https://learnopengl.com/In-Practice/2D-Game/Powerups )
* [Audio ](https://learnopengl.com/In-Practice/2D-Game/Audio )
* [Render text ](https://learnopengl.com/In-Practice/2D-Game/Render-text )
* [Final thoughts ](https://learnopengl.com/In-Practice/2D-Game/Final-thoughts )
2018-04-20 17:25:55 +03:00
* [Handmade Hero ](https://handmadehero.org )
* [How to Make Minecraft in C++/OpenGL ](https://www.youtube.com/playlist?list=PLMZ_9w2XRxiZq1vfw1lrpCMRDufe2MKV_ )
2018-04-19 16:00:22 +03:00
2017-05-02 02:08:44 -04:00
## C#:
2017-10-21 16:12:20 -04:00
2017-05-02 02:08:44 -04:00
* [Learn C# By Building a Simple RPG Game ](http://scottlilly.com/learn-c-by-building-a-simple-rpg-index/ )
2017-05-02 02:11:02 -04:00
* [Create a Rogue-like game in C# ](https://roguesharp.wordpress.com/ )
2017-05-02 02:15:48 -04:00
* [Create a Blank App with C# and Xamarin (work in progress) ](https://www.intertech.com/Blog/xamarin-tutorial-part-1-create-a-blank-app/ )
2017-05-02 02:17:20 -04:00
* [Build iOS Photo Library App with Xamarin and Visual Studio ](https://www.raywenderlich.com/134049/building-ios-apps-with-xamarin-and-visual-studio )
2017-05-02 02:08:44 -04:00
2017-05-10 23:57:12 +01:00
## Clojure:
2017-10-21 16:12:20 -04:00
2017-05-10 23:57:12 +01:00
* [Build a Twitter Bot with Clojure ](http://howistart.org/posts/clojure/1/index.html )
2018-02-27 00:44:47 -06:00
* [Bulding a Spell-Checker ](https://bernhardwenzel.com/articles/clojure-spellchecker/ )
2018-04-17 13:23:59 -05:00
* [Building a JIRA integration with Clojure & Atlassian Connect ](https://hackernoon.com/building-a-jira-integration-with-clojure-atlassian-connect-506ebd112807 )
2017-05-10 23:57:12 +01:00
2017-07-14 01:40:50 -05:00
## Elixir
2017-10-21 16:12:20 -04:00
2017-07-14 01:40:50 -05:00
* [Building a Simple Chat App With Elixir and Phoenix ](https://sheharyar.me/blog/simple-chat-phoenix-elixir/ )
2017-05-02 02:02:55 -04:00
## Java:
2017-10-21 16:12:20 -04:00
2018-04-17 11:55:25 -04:00
* [Build an Interpreter ](http://www.craftinginterpreters.com/ ) (Chapter 4-13 is written in Java)
2017-05-02 02:02:55 -04:00
* [Build a Simple HTTP Server with Java ](http://javarevisited.blogspot.com/2015/06/how-to-create-http-server-in-java-serversocket-example.html )
2017-05-02 02:25:44 -04:00
* [Build an Android Flashlight App ](https://www.youtube.com/watch?v=dhWL4DC7Krs )
2017-05-02 05:48:17 -04:00
* [Build a Spring Boot App with User Authentication ](https://scotch.io/tutorials/build-a-spring-boot-app-with-user-authentication )
2017-05-02 02:02:55 -04:00
2017-04-12 01:20:16 -04:00
## JavaScript:
2017-10-21 16:12:20 -04:00
2017-05-11 20:04:39 +06:00
* [Build 30 things in 30 days with 30 tutorials ](https://javascript30.com )
2018-04-20 12:29:35 +05:30
* [Build an App in Pure JS ](https://medium.com/codingthesmartway-com-blog/pure-javascript-building-a-real-world-application-from-scratch-5213591cfcd6 )
2017-05-11 20:04:39 +06:00
2018-04-23 01:10:24 +05:30
## HTML and CSS:
2018-04-22 13:07:39 +05:30
* [Build A Loading Screen ](https://medium.freecodecamp.org/how-to-build-a-delightful-loading-screen-in-5-minutes-847991da509f )
2017-05-05 07:09:25 +01:00
### Mobile Application:
2017-10-21 16:12:20 -04:00
2017-05-05 07:09:25 +01:00
* [Build a React Native Todo Application ](https://egghead.io/courses/build-a-react-native-todo-application )
2017-05-02 05:46:01 -04:00
### Web Applications:
2017-10-21 16:12:20 -04:00
2017-05-05 18:32:37 -04:00
#### React:
2017-10-21 16:12:20 -04:00
2017-04-12 01:20:16 -04:00
* [Create Serverless React.js Apps ](http://serverless-stack.com/ )
* [Create a Trello Clone ](http://codeloveandboards.com/blog/2016/01/04/trello-tribute-with-phoenix-and-react-pt-1/ )
2017-05-01 19:35:57 +05:30
* [Create a Character Voting App with React, Node, MongoDB and SocketIO ](http://sahatyalkabov.com/create-a-character-voting-app-using-react-nodejs-mongodb-and-socketio/ )
2017-05-15 15:12:11 -04:00
* [React Tutorial: Cloning Yelp ](https://www.fullstackreact.com/articles/react-tutorial-cloning-yelp/ )
2017-05-01 13:50:37 +05:30
* [Build a Full Stack Movie Voting App with Test-First Development using Mocha, React, Redux and Immutable ](https://teropa.info/blog/2015/09/10/full-stack-redux-tutorial.html )
2017-05-16 00:47:48 -04:00
* [Build a Twitter Stream with React and Node ](https://scotch.io/tutorials/build-a-real-time-twitter-stream-with-node-and-react-js )
2017-04-28 01:14:37 -04:00
* Build a Serverless MERN Story App with Webtask.io
2017-10-21 16:12:20 -04:00
* [Part 1 ](https://scotch.io/tutorials/build-a-serverless-mern-story-app-with-webtask-io-zero-to-deploy-1 )
* [Part 2 ](https://scotch.io/tutorials/build-a-serverless-mern-story-app-with-webtask-io-zero-to-deploy-2 )
2018-04-21 15:20:31 +05:30
* [Build A Simple Medium Clone using React.js and Node.js ](https://codeburst.io/build-simple-medium-com-on-node-js-and-react-js-a278c5192f47 )
2018-04-21 15:21:46 +05:30
* [Integrate MailChimp in JS ](https://medium.freecodecamp.org/how-to-integrate-mailchimp-in-a-javascript-web-app-2a889fb43f6f )
2018-04-22 13:20:36 +05:30
* [Build A Chrome Extension with React + Parcel ](https://medium.freecodecamp.org/building-chrome-extensions-in-react-parcel-79d0240dd58f )
2018-04-23 01:00:39 +05:30
* [Build A ToDo App With React Native ](https://blog.hasura.io/tutorial-fullstack-react-native-with-graphql-and-authentication-18183d13373a )
2018-04-29 11:06:13 +05:30
* [Make a Chat Application ](https://medium.freecodecamp.org/how-to-build-a-chat-application-using-react-redux-redux-saga-and-web-sockets-47423e4bc21a )
2017-10-21 16:12:20 -04:00
2017-05-05 18:32:37 -04:00
#### Angular:
2017-10-21 16:12:20 -04:00
2017-05-05 18:32:37 -04:00
* [Build an Instagram Clone ](https://hackhands.com/building-instagram-clone-angularjs-satellizer-nodejs-mongodb/ )
2017-05-02 12:33:47 -04:00
* Build an offline-capable Hacker News client with Angular 2+
2017-10-21 16:12:20 -04:00
* [Part 1 ](https://houssein.me/angular2-hacker-news )
* [Part 2 ](https://houssein.me/progressive-angular-applications )
2017-06-25 19:54:28 -04:00
* [Build a web application with Django and AngularJS ](https://thinkster.io/django-angularjs-tutorial )
2017-10-21 16:12:20 -04:00
2018-04-20 10:45:04 +05:30
#### Node:
2017-10-21 16:12:20 -04:00
2018-04-20 11:02:43 +05:30
* [Build A Simple Website With Node,Express and MongoDB ](https://closebrace.com/tutorials/2017-03-02/the-dead-simple-step-by-step-guide-for-front-end-developers-to-getting-up-and-running-with-nodejs-express-and-mongodb )
2017-05-05 18:32:37 -04:00
* [Build a URL Shortener with Node, MongoDB and Hapi.js ](https://www.codetuts.tech/build-a-url-shortener-node-hapi-js/?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more )
* [Build a real-time Markdown Editor with NodeJS ](https://scotch.io/tutorials/building-a-real-time-markdown-viewer )
2017-05-19 14:01:31 -04:00
* [Test-Driven Development with Node, Postgres and Knex ](http://mherman.org/blog/2016/04/28/test-driven-development-with-node/ )
2018-04-17 21:26:48 +05:30
* Write a Twitter Bot in Node.js
* [Part 1 ](https://codeburst.io/build-a-simple-twitter-bot-with-node-js-in-just-38-lines-of-code-ed92db9eb078 )
* [Part 2 ](https://codeburst.io/build-a-simple-twitter-bot-with-node-js-part-2-do-more-2ef1e039715d )
2018-04-20 10:58:14 +05:30
* [Create A Simple RESTFUL Web App ](https://closebrace.com/tutorials/2017-03-02/creating-a-simple-restful-web-app-with-nodejs-express-and-mongodb )
2018-04-20 10:45:04 +05:30
#### Vue
* [Vue 2 + Firebase: How to build a Vue app with Firebase authentication system in 15 minutes ](https://medium.com/@anas.mammeri/vue-2-firebase-how-to-build-a-vue-app-with-firebase-authentication-system-in-15-minutes-fdce6f289c3c )
2018-04-21 20:46:23 +02:00
* [Vue.js Application Tutorial – Creating a Simple Budgeting App with Vue ](https://matthiashager.com/complete-vuejs-application-tutorial/ )
2018-04-20 10:45:04 +05:30
#### Others (Hapi, Express...):
2017-05-05 07:22:50 +01:00
* Build a Progressive Web Application (PWA)
2017-10-21 16:12:20 -04:00
* [Part 1 ](https://bitsofco.de/bitsofcode-pwa-part-1-offline-first-with-service-worker/ )
* [Part 2 ](https://bitsofco.de/bitsofcode-pwa-part-2-instant-loading-with-indexeddb/ )
* [Part 3 ](https://bitsofco.de/bitsofcode-pwa-part-3-push-notifications/ )
2017-07-11 04:07:37 +01:00
* Build A Support Ticket Application With AdonisJs
2017-10-21 16:12:20 -04:00
* [Part 1 ](https://scotch.io/tutorials/build-a-support-ticket-application-with-adonisjs )
* [Part 2 ](https://scotch.io/tutorials/build-a-support-ticket-application-with-adonisjs-part-2 )
2018-04-20 01:37:15 -04:00
#### D3.js
2018-04-20 11:00:26 +05:30
* [Learn D3 using examples ](https://www.sitepoint.com/d3-js-data-visualizations/ )
2017-05-02 05:46:01 -04:00
### Game Development:
2017-10-21 16:12:20 -04:00
2017-04-28 15:08:13 -04:00
* [Make 2D Breakout Game using Phaser ](https://developer.mozilla.org/en-US/docs/Games/Tutorials/2D_breakout_game_Phaser )
2017-04-28 15:10:13 -04:00
* Make Flappy Bird in HTML5 and JavaScript with Phaser
2017-10-21 16:12:20 -04:00
* [Part 1 ](http://www.lessmilk.com/tutorial/flappy-bird-phaser-1 )
* [Part 2 ](http://www.lessmilk.com/tutorial/flappy-bird-phaser-2 )
2017-05-02 05:46:01 -04:00
### Desktop Application:
2017-10-21 16:12:20 -04:00
2017-04-28 15:40:23 -04:00
* Build a Music Player with React & Electron
2017-10-21 16:12:20 -04:00
* [Part 1 ](https://scotch.io/tutorials/build-a-music-player-with-react-electron-i-setup-basic-concepts )
* [Part 2 ](https://scotch.io/tutorials/build-a-music-player-with-react-electron-ii-making-the-ui )
* [Part 3 ](https://scotch.io/tutorials/build-a-music-player-with-react-electron-iii-bringing-it-all-together )
2017-05-02 05:46:01 -04:00
### Miscellaneous:
2017-10-21 16:12:20 -04:00
2017-05-02 05:46:01 -04:00
* [How to Build a Web Framework in Less Than 20 Lines of Code ](https://www.pubnub.com/blog/build-yourself-a-web-framework-in-less-than-20-lines-of-code/ )
2017-05-05 18:29:37 -04:00
* [Build Yourself a Redux ](https://zapier.com/engineering/how-to-build-redux/ )
2018-04-16 23:08:42 -05:00
* [How to write your own Virtual DOM ](https://medium.com/@deathmood/how-to-write-your-own-virtual-dom-ee74acc13060 )
2017-04-12 01:20:16 -04:00
2017-05-24 23:52:45 -04:00
## Kotlin:
2017-10-21 16:12:20 -04:00
2017-05-24 23:52:45 -04:00
* [Keddit - Learn Kotlin While Developing an Android Application ](https://medium.com/@juanchosaravia/learn-kotlin-while-developing-an-android-app-introduction-567e21ff9664 )
2018-04-16 07:54:41 +03:00
## Lua:
### LÖVE:
* BYTEPATH: Creation of a Complete Game with Lua and LÖVE
* [Part 0: Introduction ](https://github.com/SSYGEN/blog/issues/30 )
* [Part 1: Game Loop ](https://github.com/SSYGEN/blog/issues/15 )
* [Part 2: Libraries ](https://github.com/SSYGEN/blog/issues/16 )
* [Part 3: Rooms and Areas ](https://github.com/SSYGEN/blog/issues/17 )
* [Part 4: Exercises ](https://github.com/SSYGEN/blog/issues/18 )
* [Part 5: Game Basics ](https://github.com/SSYGEN/blog/issues/19 )
* [Part 6: Player Basics ](https://github.com/SSYGEN/blog/issues/20 )
* [Part 7: Player Stats and Attacks ](https://github.com/SSYGEN/blog/issues/21 )
* [Part 8: Enemies ](https://github.com/SSYGEN/blog/issues/22 )
* [Part 9: Director and Gameplay Loop ](https://github.com/SSYGEN/blog/issues/23 )
* [Part 10: Coding Practices ](https://github.com/SSYGEN/blog/issues/24 )
* [Part 11: Passives ](https://github.com/SSYGEN/blog/issues/25 )
* [Part 12: More Passives ](https://github.com/SSYGEN/blog/issues/26 )
* [Part 13: Skill Tree ](https://github.com/SSYGEN/blog/issues/27 )
* [Part 14: Console ](https://github.com/SSYGEN/blog/issues/28 )
* [Part 15: Final ](https://github.com/SSYGEN/blog/issues/29 )
2017-04-12 01:20:16 -04:00
## Python:
2017-10-21 16:12:20 -04:00
2017-05-02 02:02:03 -04:00
### Web Scraping:
2017-10-21 16:12:20 -04:00
2017-05-02 02:54:47 +02:00
* [Mining Twitter Data with Python ](https://marcobonzanini.com/2015/03/02/mining-twitter-data-with-python-part-1/ )
* [Scrape a Website with Scrapy and MongoDB ](https://realpython.com/blog/python/web-scraping-with-scrapy-and-mongodb/ )
2018-04-29 11:08:29 +05:30
* [How To Scrape With Python and Selenium WebDriver ](http://www.byperth.com/2018/04/25/guide-web-scraping-101-what-you-need-to-know-and-how-to-scrape-with-python-selenium-webdriver/ )
2017-10-21 16:12:20 -04:00
2017-05-02 02:02:03 -04:00
### Web Applications:
2017-10-21 16:12:20 -04:00
2017-05-02 02:54:47 +02:00
* [Build a Microblog with Flask ](https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world )
2018-04-20 12:01:41 +05:30
* Create a Blog Web App In Django
* [Part I : Introduction ](https://tutorial.djangogirls.org/en/ )
* [Part II : Extension To Add More Features ](https://legacy.gitbook.com/book/djangogirls/django-girls-tutorial-extensions/details )
2017-05-02 02:54:47 +02:00
* [Choose Your Own Adventure Presentations ](https://www.twilio.com/blog/2015/03/choose-your-own-adventures-presentations-wizard-mode-part-1-of-3.html )
* [Build a Todo List with Flask and RethinkDB ](https://realpython.com/blog/python/rethink-flask-a-simple-todo-list-powered-by-flask-and-rethinkdb/ )
2017-05-16 13:56:33 -04:00
* [Build a Todo List with Django and Test-Driven Development ](http://www.obeythetestinggoat.com/ )
2017-05-20 22:46:55 -04:00
* [Build a RESTful Microservice in Python ](http://www.skybert.net/python/developing-a-restful-micro-service-in-python/ )
2017-10-21 19:16:02 -04:00
* [Microservices with Docker, Flask, and React ](https://testdriven.io/ )
2018-04-20 12:01:41 +05:30
* [Build A Simple Web App With Flask ](https://pythonspot.com/flask-web-app-with-python/ )
2017-10-21 16:12:20 -04:00
2017-05-02 02:02:03 -04:00
### Bots:
2017-10-21 16:12:20 -04:00
2017-04-12 01:20:16 -04:00
* [Build a Reddit Bot ](http://pythonforengineers.com/build-a-reddit-bot-part-1/ )
2017-04-12 01:37:11 -04:00
* [How to Make a Reddit Bot - YouTube ](https://www.youtube.com/watch?v=krTUf7BpTc0 )
2017-04-12 01:26:30 -04:00
* [Build a Facebook Messenger Bot ](https://blog.hartleybrody.com/fb-messenger-bot/ )
2017-04-12 20:29:08 -04:00
* [Making a Reddit + Facebook Messenger Bot ](https://pythontips.com/2017/04/13/making-a-reddit-facebook-messenger-bot/ )
2017-06-13 09:38:08 +06:00
* How To Create a Telegram Bot Using Python
2017-10-21 16:12:20 -04:00
* [Part 1 ](https://khashtamov.com/en/how-to-create-a-telegram-bot-using-python/ )
* [Part 2 ](https://khashtamov.com/en/how-to-deploy-telegram-bot-django/ )
2018-04-22 13:18:59 +05:30
* [Create a Twitter Bot In Python ](https://medium.freecodecamp.org/creating-a-twitter-bot-in-python-with-tweepy-ac524157a607 )
2017-10-21 16:12:20 -04:00
2018-04-20 12:24:40 +05:30
### Data Science:
2018-04-21 03:25:49 -04:00
* Learn Python For Data Science by Doing Several Projects:
* [Part 1: Introduction ](https://www.youtube.com/watch?v=T5pRlIbr6gg )
* [Part 2: Twitter Sentiment Analysis ](https://www.youtube.com/watch?v=o_OZdbCzHUA )
* [Part 3: Recommendation Systems ](https://www.youtube.com/watch?v=9gBC9R-msAk&list=PL2-dafEMk2A6QKz1mrk1uIGfHkC1zZ6UU&index=3 )
* [Part 4: Predicting Stock Prices ](https://www.youtube.com/watch?v=SSu00IRRraY&index=4&list=PL2-dafEMk2A6QKz1mrk1uIGfHkC1zZ6UU )
* [Part 5: Deep Dream in TensorFlow ](https://www.youtube.com/watch?v=MrBzgvUNr4w&list=PL2-dafEMk2A6QKz1mrk1uIGfHkC1zZ6UU&index=5 )
* [Part 6: Genetic Algorithms ](https://www.youtube.com/watch?v=dSofAXnnFrY&index=6&list=PL2-dafEMk2A6QKz1mrk1uIGfHkC1zZ6UU )
2018-04-20 12:24:40 +05:30
2017-10-25 14:24:01 -04:00
### Machine Learning:
2018-04-20 11:31:10 +05:30
* [Write Linear Regression From Scratch in Python ](https://www.youtube.com/watch?v=uwwWVAgJBcM )
2018-04-20 11:53:54 +05:30
* [Step-By-Step Machine Learning In Python ](https://machinelearningmastery.com/machine-learning-in-python-step-by-step/ )
2018-04-23 01:10:24 +05:30
* [Predict Quality Of Wine ](https://medium.freecodecamp.org/using-machine-learning-to-predict-the-quality-of-wines-9e2e13d7480d )
2018-04-27 00:49:31 +05:30
* [Solving A Fruits Classification Problem ](https://towardsdatascience.com/solving-a-simple-classification-problem-with-python-fruits-lovers-edition-d20ab6b071d2 )
2018-04-20 11:31:10 +05:30
2018-04-20 11:31:35 +05:30
### Deep Learning:
2018-04-20 11:31:10 +05:30
2017-10-25 14:24:01 -04:00
* [Using Convolutional Neural Nets to Detect Facial Keypoints ](http://danielnouri.org/notes/2014/12/17/using-convolutional-neural-nets-to-detect-facial-keypoints-tutorial/ )
* [Generate an Average Face using Python and OpenCV ](https://www.learnopencv.com/average-face-opencv-c-python-tutorial/ )
2018-04-21 15:18:29 +05:30
* [Break A Captcha System using CNNs ](https://medium.com/@ageitgey/how-to-break-a-captcha-system-in-15-minutes-with-machine-learning-dbebb035a710 )
2018-04-25 22:19:11 +05:30
* [Use pre-trained Inception model to provide image predictions ](https://medium.com/google-cloud/keras-inception-v3-on-google-compute-engine-a54918b0058 )
2018-04-25 22:20:16 +05:30
* [Create your first CNN ](https://hackernoon.com/deep-learning-cnns-in-tensorflow-with-gpus-cba6efe0acc2 )
2018-04-25 22:21:07 +05:30
* [Build A Facial Recognition Pipeline ](https://hackernoon.com/building-a-facial-recognition-pipeline-with-deep-learning-in-tensorflow-66e7645015b8 )
2018-04-25 22:22:18 +05:30
* [Build An Image Caption Generator ](https://medium.freecodecamp.org/building-an-image-caption-generator-with-deep-learning-in-tensorflow-a142722e9b1f )
2018-04-27 00:51:04 +05:30
* [Make your Own Face Recognition System ](https://medium.freecodecamp.org/making-your-own-face-recognition-system-29a8e728107c )
2018-04-29 11:11:27 +05:30
* [Train a Language Detection AI in 20 minutes ](https://towardsdatascience.com/how-i-trained-a-language-detection-ai-in-20-minutes-with-a-97-accuracy-fdeca0fb7724 )
2018-04-29 11:14:45 +05:30
* Learn Twitter Sentiment Analysis -
* [Part I ](https://towardsdatascience.com/another-twitter-sentiment-analysis-bb5b01ebad90 )
* [Part II ](https://towardsdatascience.com/another-twitter-sentiment-analysis-with-python-part-2-333514854913 )
2018-04-30 23:52:59 +05:30
* [Part III ](https://towardsdatascience.com/another-twitter-sentiment-analysis-with-python-part-3-zipfs-law-data-visualisation-fc9eadda71e7 )
* [Part IV ](https://towardsdatascience.com/another-twitter-sentiment-analysis-with-python-part-4-count-vectorizer-b3f4944e51b5 )
2018-04-30 23:49:15 +05:30
* [Use Transfer Learning for custom image classification ](https://becominghuman.ai/transfer-learning-retraining-inception-v3-for-custom-image-classification-2820f653c557 )
2017-10-25 14:24:01 -04:00
2017-05-02 02:02:03 -04:00
### Miscellaneous:
2017-10-21 16:12:20 -04:00
2017-04-12 01:26:30 -04:00
* [Build a Simple Interpreter ](https://ruslanspivak.com/lsbasi-part1/ )
2018-01-14 23:40:28 +07:00
* [Build a Simple Blockchain in Python ](https://hackernoon.com/learn-blockchains-by-building-one-117428612f46 )
2017-04-12 01:59:03 -04:00
* [Write a NoSQL Database in Python ](https://jeffknupp.com/blog/2014/09/01/what-is-a-nosql-database-learn-by-writing-one-in-python/ )
2017-04-13 12:35:37 -04:00
* [Building a Gas Pump Scanner with OpenCV/Python/iOS ](https://hackernoon.com/building-a-gas-pump-scanner-with-opencv-python-ios-116fe6c9ae8b )
2017-05-19 15:57:46 -04:00
* [Build a Distributed Streaming System with Python and Kafka ](https://scotch.io/tutorials/build-a-distributed-streaming-system-with-apache-kafka-and-python )
2017-11-14 23:48:58 -05:00
* [Writing a basic x86-64 JIT compiler from scratch in stock Python ](https://csl.name/post/python-jit/ )
2017-04-12 01:59:03 -04:00
## Go:
2017-10-21 16:12:20 -04:00
2017-04-12 01:59:03 -04:00
* [Create a Real Time Chat App with Golang, Angular 2, and WebSocket ](https://www.thepolyglotdeveloper.com/2016/12/create-real-time-chat-app-golang-angular-2-websockets/ )
2017-04-28 15:24:47 -05:00
* [Building Go Web Applications and Microservices Using Gin ](https://semaphoreci.com/community/tutorials/building-go-web-applications-and-microservices-using-gin )
2017-04-28 15:25:36 -05:00
* [How to Use Godog for Behavior-driven Development in Go et started with Godog ](https://semaphoreci.com/community/tutorials/how-to-use-godog-for-behavior-driven-development-in-go )
2018-01-29 13:03:16 -05:00
* Building Blockchain in Go
* [Part 1: Basic Prototype ](https://jeiwan.cc/posts/building-blockchain-in-go-part-1/ )
* [Part 2: Proof of Work ](https://jeiwan.cc/posts/building-blockchain-in-go-part-2/ )
* [Part 3: Persistence and CLI ](https://jeiwan.cc/posts/building-blockchain-in-go-part-3/ )
* [Part 4: Transactions 1 ](https://jeiwan.cc/posts/building-blockchain-in-go-part-4/ )
* [Part 5: Address ](https://jeiwan.cc/posts/building-blockchain-in-go-part-5/ )
* [Part 6: Transactions 2 ](https://jeiwan.cc/posts/building-blockchain-in-go-part-6/ )
* [Part 7: Network ](https://jeiwan.cc/posts/building-blockchain-in-go-part-7/ )
2018-04-20 11:34:46 +05:30
* [Build Web Application with GoLang ](https://legacy.gitbook.com/book/astaxie/build-web-application-with-golang/details )
2017-04-12 01:31:55 -04:00
2017-05-11 20:48:35 +07:00
## PHP:
2017-10-21 16:12:20 -04:00
2017-05-04 23:18:35 +01:00
* [How To Build A Blog With Laravel ](https://www.youtube.com/playlist?list=PLwAKR305CRO-Q90J---jXVzbOd4CDRbVx )
2017-05-11 18:07:56 -04:00
* [Make Your Own Blog (in Pure PHP) ](http://ilovephp.jondh.me.uk/en/tutorial/make-your-own-blog )
* [Build A Real Estate Website Example with SilverStripe ](https://www.silverstripe.org/learn/lessons/ )
2017-06-29 23:39:49 +01:00
* [Building Realtime Chat App with Laravel 5.4 and VueJS ](https://www.youtube.com/playlist?list=PLXsbBbd36_uVjOFH_P25__XAyGsohXWlv )
2017-07-11 05:18:25 +01:00
* [Build A Social Network: Laravel 5 - Youtube ](https://www.youtube.com/playlist?list=PLfdtiltiRHWGGxaR6uFtwZnnbcXqyq8JD )
2017-05-04 23:18:35 +01:00
2017-10-21 19:11:25 -04:00
## OCaml:
* [Implement a Language with LLVM in OCaml ](https://llvm.org/docs/tutorial/#kaleidoscope-implementing-a-language-with-llvm-in-objective-caml )
2017-04-12 01:37:11 -04:00
## Ruby:
2017-10-21 16:12:20 -04:00
2017-10-21 19:03:59 -04:00
* [Build a Network Stack with Ruby ](https://medium.com/geckoboard-under-the-hood/how-to-build-a-network-stack-in-ruby-f73aeb1b661b )
### Ruby on Rails:
2017-04-12 01:37:11 -04:00
* [Build Instagram From Scratch with Ruby on Rails ](https://www.dropbox.com/s/9vq430e9s3q7pu8/Let%27s%20Build%20Instagram%20with%20Ruby%20on%20Rails%20-%20Free%20Edition.pdf?dl=0 )
2017-05-02 05:49:03 -04:00
* [Build a CMS with Ruby on Rails ](https://pchm.co/posts/tutorial-how-to-build-a-cms-in-ruby-on-rails )
2017-05-02 05:51:03 -04:00
* [Build a Social Network using Rails ](https://medium.com/rails-ember-beyond/how-to-build-a-social-network-using-rails-eb31da569233 )
2017-04-12 01:37:11 -04:00
2017-04-12 01:31:55 -04:00
## Haskell:
2017-10-21 16:12:20 -04:00
2017-04-12 02:19:02 -04:00
* [Write You a Haskell - Build a modern functional compiler ](http://dev.stephendiehl.com/fun/ )
2017-04-28 01:35:23 -04:00
* [Write Yourself a Scheme in 48 hours ](https://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours )
2017-05-08 14:30:47 +08:00
* [Write You A Scheme, Version 2 ](https://github.com/write-you-a-scheme-v2/scheme )
2017-05-02 05:42:57 -04:00
* [Roll Your Own IRC Bot ](https://wiki.haskell.org/Roll_your_own_IRC_bot )
2017-06-24 18:55:39 -04:00
* [Let's Build A Basic Compiler in Haskell ](http://alephnullplex.github.io/cradle/ )
2017-05-02 05:59:03 -04:00
* [Making Movie Monad ](https://lettier.github.io/posts/2016-08-15-making-movie-monad.html )
2017-05-11 18:07:56 -04:00
* [Making a Website with Haskell **(outdated)** ](http://adit.io/posts/2013-04-15-making-a-website-with-haskell.html )
2017-04-12 02:19:02 -04:00
2017-05-02 05:53:22 -04:00
## R:
2017-10-21 16:12:20 -04:00
2017-05-06 11:52:32 -05:00
* [Build Web Apps with Shiny ](http://shiny.rstudio.com/tutorial/ )
2018-04-23 21:49:44 +05:30
* [Build A Cryptocurrency Bot ](https://towardsdatascience.com/build-a-cryptocurrency-trading-bot-with-r-1445c429e1b1 )
2017-05-02 05:53:22 -04:00
2017-04-12 02:19:02 -04:00
## Rust:
2017-10-21 16:12:20 -04:00
2017-04-12 02:19:02 -04:00
* A Simple Web App in Rust
2017-10-21 16:12:20 -04:00
* [Part 1 ](http://joelmccracken.github.io/entries/a-simple-web-app-in-rust-pt-1/ )
* [Part 2a ](http://joelmccracken.github.io/entries/a-simple-web-app-in-rust-pt-2a/ )
* [Part 2b ](http://joelmccracken.github.io/entries/a-simple-web-app-in-rust-pt-2b/ )
2018-03-10 05:06:21 -05:00
* [Write an OS in pure Rust ](https://os.phil-opp.com/news/2018-03-09-pure-rust/ )
2017-06-23 15:59:40 -04:00
* [Build a browser engine in Rust ](https://limpet.net/mbrubeck/2014/08/08/toy-layout-engine-1.html )
2018-03-15 11:38:43 -04:00
* [Write a Microservice in Rust ](http://www.goldsborough.me/rust/web/tutorial/2018/01/20/17-01-11-writing_a_microservice_in_rust/ )
2018-01-14 23:38:05 +07:00
* [Learning Rust with Too Many Linked Lists ](http://cglab.ca/~abeinges/blah/too-many-lists/book/README.html )
2018-04-16 08:28:37 +03:00
* Rust in Detail: Writing Scalable Chat Service from Scratch
* [Part 1: Implementing WebSocket. Introduction. ](https://nbaksalyar.github.io/2015/07/10/writing-chat-in-rust.html )
* [Part 2: Sending and Receiving Messages ](https://nbaksalyar.github.io/2015/11/09/rust-in-detail-2.html )
2017-04-28 15:42:35 -04:00
2017-05-23 10:02:40 -04:00
## Swift:
2017-10-21 16:12:20 -04:00
2017-05-23 10:02:40 -04:00
* [Hacking with Swift - Learn Swift by doing 39 projects ](https://www.hackingwithswift.com/read )
2017-04-28 15:42:35 -04:00
## Additional Resources
2017-10-21 16:12:20 -04:00
2017-04-28 15:42:35 -04:00
* [React Redux Links ](https://github.com/markerikson/react-redux-links )
* [Full Stack Python ](https://www.fullstackpython.com/ )
* [Node School ](https://nodeschool.io/ )
2017-04-28 15:45:54 -04:00
* [ScotchIO ](https://scotch.io/ )
2017-04-29 02:44:46 -04:00
* [Exercism ](http://www.exercism.io/ )
2017-05-05 07:02:28 +01:00
* [Egghead.io ](http://www.egghead.io/ )
2017-05-19 14:02:15 -04:00
* [Michael Herman's Blog ](http://mherman.org/ )
2017-07-12 23:41:25 -04:00
* [Thinkster.io ](http://thinkster.io )
2018-04-08 19:43:10 -04:00
* [C Project Based Tutorials ](https://www.reddit.com/r/C_Programming/comments/872rlt/c_project_based_tutorials/ )