Awesome List Updates on Oct 03 - Oct 09, 2016
44 awesome lists updated this week.
🏠 Home · 🔍 Search · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor
1. Amas
Ask these people anything!
- Graham Daniels (⭐5) - Sr Software Engineer at Refinery29, US Lead for PHPWomen, Host of #NoCapes, Single dad. Brooklyn, NY.
2. Awesome R
Web Technologies and Services
- plumber (⭐1.4k) - A library to expose existing R code as web API.
3. Awesome Raspberry Pi
OS Images
- Alpine Linux - Security-oriented, lightweight Linux distribution based on musl libc and busybox.
- Arch Linux ARM - Lightweight and flexible Linux distribution that tries to Keep It Simple.
- chilipie-kiosk (⭐1.3k) - Image which boots directly into full-screen Chrome, perfect for dashboards and build monitors.
Projects
- 40-node Raspberry Pi Cluster - Cluster aimed to be under the size of full tower desktop.
- Building a Ceph Cluster on Raspberry Pi - Highly redundant and low power usage RADOS home storage solution.
- Chromebook Charger Kiosk - Timed charging station for students using Chromebooks at school.
- Jasper - Flexible open source personal assistant.
- Movel (⭐134) - Raspberry Pi car computer.
- Nerves Project - Craft and deploy bulletproof embedded software in Elixir.
- Pi-hole - Black hole for internet ads.
Tutorials / iOS
- Controlling Spotify with Slack and a Raspberry Pi - Node.js project to control Spotify & Slack with libspotify.
- How To Make a Raspberry Pi Turn on a Lamp with iBeacon™ Technology - Good beginners-guide to working with Beacon technology.
Community / iOS
4. Awesome Groovy
Rule Engines
- grules (⭐35) - rule engine for data preprocessing
- n-cube (⭐170) - a Rules Engine, Decision Table, Decision Tree, Templating Engine, and Enterprise Spreadsheet, built as a hyper-space.
5. Awesome Serverless
Professional services
- Craftship - Consultancy.
6. Awesome Swift
Chart
- SwiftChart (⭐1k) - A simple line and area charting library for iOS. Supports multiple series, partially filled series and touch events.
7. Awesome Laravel
Popular Packages / Testing & Debugging
- Laravel API Tester (⭐342) - Postman-like tool with Laravel routes
8. Awesome Cmake
Community
Package Management / Build Systems
- hunter (⭐1.9k) - Cross-platform package manager for C++ (based on CMake ExternalProject).
[BSD2]
- cget (⭐415) - CMake package retrieval. This can be used to download and install CMake packages.
[BOOST]
- cpm (⭐716) - C++ Package Manager based on CMake and Git.
[MIT]
- conan (⭐6.3k) - Conan C++ Package Manager, implemented in Python and has a CMake integration backend.
[MIT]
- fips (⭐421) - High-level build system/dependency management for distributed, multi-platform C/C++ projects.
[MIT]
- Ninja (⭐8.6k) - Build system that differs from others in two major respects: it is designed to have its input files generated by a higher-level build system (like CMake), and it is designed to run builds as fast as possible.
[APACHE2]
Modules
- cmake-modules (⭐873) - Ryan Pavlik's collection of CMake modules. There are a number of find modules, especially for virtual reality and physical simulation, some utility modules, and some patches or workarounds for CMake itself.
[BOOST]
- cmake-modules (⭐440) - This is a collection of additional CMake modules. Most of them are from Ryan Pavlik.
[BOOST]
- CMake (⭐144) - Eyescale's common CMake modules.
[BSD3]
- cmake-modules (⭐80) - CMake modules for some scientific libraries.
[BSD2]
- cgcmake (⭐114) - CMake modules for common applications related to computer graphics.
[MIT]
- FindMathematica (⭐50) - CMake module for Mathematica.
[MIT]
- extra-cmake-modules (⭐101) - KDE's extra modules and scripts for CMake.
[BSD3]
- FindICU.cmake (⭐28) - CMake module to find International Components for Unicode (ICU) Library.
[BSD2]
- FindTBB (⭐82) - CMake find module for Intel Threading Building Blocks.
[MIT]
- cmake-modules (⭐30) - hanjianwei's CMake module collection.
[MIT]
Utility Scripts
- cotire (⭐1.3k) - Cotire (compile time reducer) is a CMake module that speeds up the build process of CMake based build systems by fully automating techniques as precompiled headers and unity builds for C and C++.
[MIT]
- ucm (⭐193) - For managing compiler/linker flags, collecting sources, precompiled headers, unity builds and others.
[MIT]
- cmakepp (⭐399) - Enhancement Suite for the CMake Build System.
[MIT]
- sugar (⭐99) - CMake tools and examples: collecting source files, warnings suppression, etc.
[BSD2]
- DownloadProject (⭐430) - CMake module for downloading an external project's source at configure time.
[MIT]
- buildem (⭐27) - Modular CMake-based system that leverages ExternalProject to simplify builds.
[LICENSE]
- coveralls-cmake (⭐82) - Coveralls JSON coverage generator and uploader for CMake.
[MIT]
- compatibility (⭐72) - Improved version of cmake-compile-features.
[LICENSE]
- cmake-modules (⭐41) - LibFindMacros development repository and other cool CMake stuff.
[LICENSE]
- GreatCMakeCookOff (⭐37) - This is a repository of useful and less than useful CMake recipes.
[MIT]
- cppcheck-target-cmake (⭐17) - Per-target CPPCheck for CMake.
[MIT]
- clang-tidy-target-cmake (⭐16) - Add clang-tidy checks to a target using CMake.
[MIT]
- cmake-unit (⭐35) - Unit testing framework for CMake.
[MIT]
- cmake-header-language (⭐4) - CMake macro to determine the language of a header file.
[MIT]
- tooling-cmake-util (⭐3) - Utility and common library for all polysquare CMake tools.
[MIT]
- iwyu-target-cmake (⭐8) - CMake integration for include-what-you-use.
[MIT]
- sanitizers-cmake (⭐288) - CMake module to enable sanitizers for binary targets.
[MIT]
- cmake-precompiled-header (⭐156) - Visual Studio and GCC precompiled header macro.
[LICENSE]
- CMakePCHCompiler (⭐104) - CMake precompiled headers via custom compiler extension - with reuse support!
[MIT]
- CMake-codecov (⭐81) - Enables code coverage and generates coverage reports with CMake targets.
[GPL]
Toolchains
- dockcross (⭐2.6k) - Cross compiling toolchains in Docker images.
[MIT]
- android-cmake (⭐1.2k) - CMake toolchain file and other scripts for the Android NDK.
[BSD3]
- ios-cmake (⭐305) - Toolchain file and examples using CMake for iOS development.
[BSD3]
- qt-android-cmake (⭐228) - For building and deploying Qt based apps on Android without QtCreator.
[LICENSE]
- mingw-w64-cmake - CMake-based MinGW-w64 Cross Toolchain - to build Windows binaries of mpv.
[ISC]
- cmake-avr (⭐161) - CMake toolchain for AVR.
[LICENSE]
- arduino-cmake (⭐57) - This is the CMake project settings for the Arduino platform.
[MPL]
- polly (⭐829) - Collection of CMake toolchain files and scripts for cross-platform build and CI testing.
[BSD2]
- cmake (⭐8) - Collection of CMake toolchain files, mostly for static linking.
[APACHE2]
Examples / Templates
- cmake-init (⭐802) - Template for reliable, cross-platform C++ project setup using CMake.
[LICENSE]
- android-cmake (⭐33) - Examples of using ruslo/hunter (⭐1.9k) package manager for an Android application.
[BSD2]
- hunter-simple (⭐45) - Example of downloading/installing dependencies using ruslo/hunter (⭐1.9k) package manager.
[BSD2]
- package-example (⭐363) - Config mode of find_package (examples for this Stack Overflow question).
[NO LICENSE]
- minimal_cmake_example (⭐156) - Minimal CMake example, that covers dependencies and packaging.
[CC0-1.0]
- cmake-example (⭐142) - Example project which demonstrates various CMake features.
[BSD3]
- cmake-examples (⭐9.3k) - Useful CMake examples in a tutorial format.
[MIT]
- mini-cmake-qt (⭐180) - Minimal CMake template for Qt 5 projects.
[LICENSE]
- BASIS (⭐40) - CMake BASIS makes it easy to create sharable software and libraries that work together.
[BSD2]
Other
- autocmake (⭐37) - Using a autocmake.yml file Autocmake composes CMake building blocks into a CMake project and generates CMakeLists.txt as well as a setup script, which serves as a front-end to CMakeLists.txt.
[BSD3]
- scikit-build (⭐359) - Improved build system generator for CPython C extensions.
[MIT]
- node-cmake (⭐76) - CMake-based build system for node.js native modules.
[ISC]
- cmake-font-lock (⭐39) - Advanced syntax coloring support for CMake scripts inside Emacs.
[GPL]
- autovala (⭐108) - Program that automatically generates CMake configuration files for your Vala project.
[GPL]
- catkin (⭐276) - CMake-based build system that is used to build all packages in Robot Operating System (ROS).
[BSD3]
- suitesparse-metis-for-windows (⭐392) - CMake scripts for painless usage of SuiteSparse+METIS.
[BSD3]
- cmake-d (⭐56) - CMake for D2.
[MIT]
- cmakeprojectmanager2 (⭐70) - Enhanced CMake Project Manager plugin for Qt Creator.
[NO LICENSE]
- cmake-lint (⭐98) - Check for coding style issues in CMake files. cmakelint requires Python.
[APACHE2]
- git-cmake-format (⭐48) - Integrate clang-format into your CMake project hosted in a git repository.
[LICENSE]
- configure-cmake (⭐82) - configure-cmake is an autotools-style configure script for CMake-based projects.
[CC0-1.0]
- cmake-ast (⭐29) - Python module to reduce a CMake file to an AST.
[MIT]
9. Awesome Iot
Hardware
- UDOO - UDOO is a single-board computer with an integrated Arduino 2 compatible microcontroller, designed for computer science education, the world of Makers and the Internet of Things.
Software / Frameworks
- Freedomotic - Freedomotic is an open source, flexible, secure Internet of Things (IoT) development framework, useful to build and manage modern smart spaces. It is targeted to private individuals (home automation) as well as business users (smart retail environments, ambient aware marketing, monitoring and analytics, etc). Written in Java, it can interact with well known standard building automation protocols as well as with "do it yourself" solutions.
Software / Libraries and Tools
- Pi4J - Pi4j is intended to provide a friendly object-oriented I/O API and implementation libraries for Java Programmers to access the full I/O capabilities of the Raspberry Pi platform.
10. Awesome Dojo
DojoToolkit.org resources and documentation
- API - API reference for Dojo Toolkit
- Blog - Dojo Toolkit Blog
- Demos - Dojo Toolkit Demos
Packages, libraries and scripts / Dojo 2
- Dojo loader (⭐13) - AMD loader for Dojo2.
Serverside integrations / Dojo 2
- Java
- Dojofaces - project that assists JSF developers in connecting Dojo widgets with JSF backing beans
- DWR - library that enables Java on the server and JavaScript in a browser
- Grails - open source full stack web application framework that has support for Dojo with plugin
- LightStreamer - Server with Dojo integrated
- Spring - How to integrate Spring and Dojo
- Websphere - Application server has Dojo integrated
Testing / Dojo 2
- Intern Yeoman generator (⭐2) - Yeoman generator - Intern
TypeScript / Dojo 2
- Definitive TypeScript Guide - A guide about features and functionalities of TypeScript
11. Awesome Browserify
Official Resources
Tutorials
Articles
Tools / Production Tools
- wzrd.in - Browserify CDN. Browserify-as-a-Service!
- bankai (⭐1.1k) - DIY asset server. Serves HTML, CSS and JS as streams.
12. Awesome Jquery
Resources
- Tuts+ - Useful and indepth articles about jQuery.
Miscellaneous Resources / Paid Books
13. Awesome Vue
Resources / Tutorials
14. PlacesToPostYourStartup
Websites
- Alternative To - http://alternativeto.net/
- App Rater - https://apprater.net/add/
- Boing Boing - http://boingboing.net/sub/
- Capterra - http://www.capterra.com/vendors/sign-up
- Crazy About Startups - http://www.crazyaboutstartups.com/index.php/share-your-startup-form
- Geek Wire - http://geekwire.com/startup-list/
- Killer Startups - http://killerstartups.com/submit-startup/
- Launched - https://launched.io/SubmitStartup
- Next Big Product - http://nextbigproduct.net/product-submission/
- Robingood - http://tools.robingood.com/
- Side Projectors - https://www.sideprojectors.com
- Stack Share - http://stackshare.io/
- Startup Inspire - https://www.startupinspire.com/submit
- Startup Register - http://startupregister.net/register-your-startup/
- Tech Faster - http://techfaster.com/submit-your-company/
- Venture Beat - http://venturebeat.com/news-tips/
- Ycombinator - https://news.ycombinator.com/
15. Awesome Npm Scripts
Task Runners
- redrun (⭐110) - Expand scripts from package.json to improve execution speed.
Dev Servers
- live-server (⭐4k) - Simple development http server with live reload capability.
Cross-platform Utilities
- del-cli (⭐265) - Safer file and folder deletion.
- cross-env (⭐5.9k) - Set environment variables for scripts, unix-style.
Other Utilities / Utility Packs
- gzip-size-cli (⭐180) - Get the gzipped size of a file or stdin.
- opn-cli (⭐370) - Open websites, files, executables, etc. with the user's preferred application.
Miscellaneous / Utility Packs
- run-npm (⭐180) - Run locally-installed node module executables. Useful for debugging npm scripts.
16. Awesome Postgres
Resources / Articles
17. Awesome Electron
Open Source / Other
- KeeWeb (⭐12k) - Unofficial KeePass app.
Closed Source / Other
- Inkdrop - Markdown notebook for hackers.
18. Awesome D3
Utils / Third Party
- d3scription (⭐29) - Tooltip with window edge collision detection
19. Awesome Educational Games
Programming
- CodeCombat - The most engaging coding game for learning programming.
- Mimo - Learn how to become a developer on mobile.
- ReturnTrue - A game were you learn about booleans, return true to win.
- Untrusted - Learn while playing a JavaScript adventure game.
20. Awesome Php
Table of Contents / Caching and Locking
- Metaphore (⭐101) - Cache slam defense using a semaphore to prevent dogpile effect.
21. Awesome Jvm
Languages
- Rembulan (⭐157) - Rembulan is an implementation of Lua 5.3 for the JVM, written in pure Java with minimal dependencies.
22. Awesome Elm
Boilerplates / Outdated Boilerplates
- elmkit (⭐52) - A lightweight Brunch based setup for web app. Includes Brunch, Hot Module Replacement, Elm, Scss, Elm tests.
23. Awesome Projects Boilerplates
Python
- CookieCutter (⭐19k) List of various python templates by Audrey.
Ruby
- Rails Bootstrap (⭐525) Starter App for Rails and Bootstrap
GitHub
- Pollinate (⭐221) Template your base files and generate them from GitHub.
24. Awesome Webaudio
Resources / Tutorials
- The Web Audio API: What Is It? - Intro to WebAudio.
25. Awesome Elixir
Algorithms and Data structures
- witchcraft (⭐1.2k) - Common algebraic structures and functions for Elixir.
Build Tools
- rebar3_auto (⭐54) - Rebar3 plugin to auto compile and reload on file change.
HTTP
- river (⭐82) - An HTTP/2 client that is lightweight and lightning fast.
Instrumenting / Monitoring
- prometheus-plugs (⭐54) - Plugs instrumenters/exporter for prometheus.ex.
Macros
- named_args (⭐28) - Allows named arg style arguments in Elixir.
Release Management
- exrm_heroku (⭐45) - Publish your Elixir releases to Heroku with ease.
Third Party APIs
- pocketex (⭐7) - Pocketex is an Elixir client for the Pocket read later service getpocket.com.
26. Awesome Computer Vision
Links / Image Deblurring
27. Awesome Ruby
API Builder and Discovery
- JSONAPI::Utils (⭐216) - JSONAPI::Utils is built on top of JSONAPI::Resources taking advantage of its resource-driven style and bringing an easy way to build modern JSON APIs with no or less learning curve.
28. Awesome Robotics
Conferences
Journals
29. Awesome Courses
Courses / Systems
- CS 186 Introduction to Database Systems UC Berkeley
- In the project assignments in CS186, you will write a basic database management system called SimpleDB. For this project, you will focus on implementing the core modules required to access stored data on disk; in future projects, you will add support for various query processing operators, as well as transactions, locking, and concurrent queries.
- Lecture Videos
- Lecture Notes
- Projects
- Hack the Kernel Introduction to Operating Systems SUNY University at Buffalo, NY
- This course is an introduction to operating system design and implementation. We study operating systems because they are examples of mature and elegant solutions to a difficult design problem: how to safely and efficiently share system resources and provide abstractions useful to applications.
- For the processor, memory, and disks, we discuss how the operating system allocates each resource and explore the design and implementation of related abstractions. We also establish techniques for testing and improving system performance and introduce the idea of hardware virtualization. Programming assignments provide hands-on experience with implementing core operating system components in a realistic development environment. Course by Dr.Geoffrey Challen
- Syllabus
- Slides
- Video lectures
- Assignments
- Old Exams
Courses / Programming Languages / Compilers
- CS 143 Compiler construction Stanford University
- CS143 is a Stanford's course in the practical and theoretical aspects of compiler construction.
- Home
- Syllabus
- Lectures
- Assignments
- CS143 - 2011
- CS 223 Purely Functional Data Structures In Elm University of Chicago
- This course teaches functional reactive programming and purely functional data structures based on Chris Okazaki's book and using the Elm programming language.
- Lectures
- Assignments
- CSC 253 CPython internals: A ten-hour codewalk through the Python interpreter source code University of Rochester
- Nine lectures walking through the internals of CPython, the canonical Python interpreter implemented in C. They were from the Dynamic Languages and Software Development course taught in Fall 2014 at the University of Rochester.
Courses / Algorithms
- CS 224 Advanced Algorithms Harvard University
- CS 224 is an advanced course in algorithm design, and topics we will cover include the word RAM model, data structures, amortization, online algorithms, linear programming, semidefinite programming, approximation algorithms, hashing, randomized algorithms, fast exponential time algorithms, graph algorithms, and computational geometry.
- Lecture Videos (Youtube)
- Assignments
- CS 261 A Second Course in Algorithms Stanford University
- Algorithms for network optimization: max-flow, min-cost flow, matching, assignment, and min-cut problems. Introduction to linear programming. Use of LP duality for design and analysis of algorithms. Approximation algorithms for NP-complete problems such as Steiner Trees, Traveling Salesman, and scheduling problems. Randomized algorithms. Introduction to online algorithms.
- Lecture Notes, Videos & Assignments (Youtube)
- CSE 373 Analysis of Algorithms Stony Brook University
- Prof Steven Skiena's no stranger to any student when it comes to algorithms. His seminal book has been touted by many to be best for getting that job in Google. In addition, he's also well-known for tutoring students in competitive programming competitions. If you're looking to brush up your knowledge on Algorithms, you can't go wrong with this course.
- Lecture Videos
- 6.854/18.415J Advanced Algorithms MIT
- Advanced course in algorithms by Dr. David Karger covering topics such as amortization, randomization, fingerprinting, word-level parallelism, bit scaling, dynamic programming, network flow, linear programming, fixed-parameter algorithms, and approximation algorithms.
- Register on NB to access the problem set and lectures.
- 15-451/651 Algorithms Carnegie Mellon University
- The required algorithms class that go in depth into all basic algorithms and the proofs behind them. This is one of the heavier algorithms curriculums on this page. Taught by Avrim Blum and Manuel Blum who has a Turing Award due to his contributions to algorithms. Course link includes a very comprehensive set of reference notes by Avrim Blum.
- 16s-4102 Algorithms University of Virginia
Courses / CS Theory
- CS 3220 Introduction to Scientific Computing Cornell University
- In this one-semester survey course, we introduce numerical methods for solving linear and nonlinear equations, interpolating data, computing integrals, and solving differential equations, and we describe how to use these tools wisely (we hope!) when solving scientific problems.
- Syllabus
- Lectures
- Assignments
- CS 4300 Information Retrieval Cornell University
- Studies the methods used to search for and discover information in large-scale systems. The emphasis is on information retrieval applied to textual materials, but there is some discussion of other formats.The course includes techniques for searching, browsing, and filtering information and the use of classification systems and thesauruses. The techniques are illustrated with examples from web searching and digital libraries.
- Syllabus
- Lectures
- Assignments
Courses / Introduction to CS
- CS 1410-2 and CS2420-20 Computer Science I and II for Hackers University of Utah
- An intro course in the spirit of SICP designed by Professor Matthew Flatt (one of the lead designers of Racket and author of HtDP). Mostly Racket and C, and a bit of Java, with explanations on how high level functional programming concepts relate to the design of OOP programs. Do this one before SICP if SICP is a bit too much...
- Lectures and Assignments 1
- Lectures and Assignments 2
- Textbook
- Racket Language
- CS-for-all CS for All Harvey Mudd College
- This book (and course) takes a unique approach to “Intro CS.” In a nutshell, our objective is to provide an introduction to computer science as an intellectually rich and vibrant field rather than focusing exclusively on computer programming. While programming is certainly an important and pervasive element of our approach, we emphasize concepts and problem-solving over syntax and programming language features.
- Lectures and Other resources
Courses / Machine Learning
- COMS 4771 Machine Learning Columbia University
- Course taught by Tony Jebara introduces topics in Machine Learning for both generative and discriminative estimation. Material will include least squares methods, Gaussian distributions, linear classification, linear regression, maximum likelihood, exponential family distributions, Bayesian networks, Bayesian inference, mixture models, the EM algorithm, graphical models, hidden Markov models, support vector machines, and kernel methods.
- Lectures and Assignments
- CS 4780 Machine Learning Cornell University
- This course will introduce you to technologies for building data-centric information systems on the World Wide Web, show the practical applications of such systems, and discuss their design and their social and policy context by examining cross-cutting issues such as citizen science, data journalism and open government. Course work involves lectures and readings as well as weekly homework assignments, and a semester-long project in which the students demonstrate their expertise in building data-centric Web information systems.
- Syllabus
- Lectures
- EECS E6894 Deep Learning for Computer Vision and Natural Language Processing Columbia University
- This graduate level research class focuses on deep learning techniques for vision and natural language processing problems. It gives an overview of the various deep learning models and techniques, and surveys recent advances in the related fields. This course uses Theano as the main programming tool. GPU programming experiences are preferred although not required. Frequent paper presentations and a heavy programming workload are expected.
- Readings
- Assignments
- Lecture Notes
- EE103 Introduction to Matrix Methods Stanford University
- The course covers the basics of matrices and vectors, solving linear equations, least-squares methods, and many applications. It'll cover the mathematics, but the focus will be on using matrix methods in applications such as tomography, image processing, data fitting, time series prediction, finance, and many others. EE103 is based on a book that Stephen Boyd and Lieven Vandenberghe are currently writing. Students will use a new language called Julia to do computations with matrices and vectors.
- Lectures
- Book
- Assignments
- Code
- StatLearning Intro to Statistical Learning Stanford University
- This is an introductory-level course in supervised learning, with a focus on regression and classification methods. The syllabus includes: linear and polynomial regression, logistic regression and linear discriminant analysis; cross-validation and the bootstrap, model selection and regularization methods (ridge and lasso); nonlinear models, splines and generalized additive models; tree-based methods, random forests and boosting; support-vector machines.
- The lectures cover all the material in An Introduction to Statistical Learning, with Applications in R which is a more approachable version of the Elements of Statistical Learning (or ESL) book.
- 10-601 Machine Learning Carnegie Mellon University
- This course covers the theory and practical algorithms for machine learning from a variety of perspectives. It covers topics such as Bayesian networks, decision tree learning, Support Vector Machines, statistical learning methods, unsupervised learning and reinforcement learning. The course covers theoretical concepts such as inductive bias, the PAC learning framework, Bayesian learning methods, margin-based learning, and Occam's Razor. Short programming assignments include hands-on experiments with various learning algorithms. This course is designed to give a graduate-level student a thorough grounding in the methodologies, technologies, mathematics and algorithms currently needed by people who do research in machine learning.
- Taught by one of the leading experts on Machine Learning - Tom Mitchell
- Lectures
- Project Ideas and Datasets
- 11-785 Deep Learning Carnegie Mellon University
- The course presents the subject through a series of seminars and labs, which will explore it from its early beginnings, and work themselves to some of the state of the art. The seminars will cover the basics of deep learning and the underlying theory, as well as the breadth of application areas to which it has been applied, as well as the latest issues on learning from very large amounts of data. We will concentrate largely, although not entirely, on the connectionist architectures that are most commonly associated with it. Lectures and Reading Notes are available on the page.
Courses / Security
- CS 155 Computer and Network Security Stanford
- Principles of computer systems security. Attack techniques and how to defend against them. Topics include: network attacks and defenses, operating system holes, application security (web, email, databases), viruses, social engineering attacks, privacy, and digital rights management. Course projects focus on building reliable code. Recommended: Basic Unix. Primarily intended for seniors and first-year graduate students.
- CS 161 Computer Security UC Berkeley
- Introduction to computer security. Cryptography, including encryption, authentication, hash functions, cryptographic protocols, and applications. Operating system security, access control. Network security, firewalls, viruses, and worms. Software security, defensive programming, and language-based security. Case studies from real-world systems.
- CS 259 Security Modeling and Analysis Stanford
- The course will cover a variety of contemporary network protocols and other systems with security properties. The course goal is to give students hands-on experience in using automated tools and related techniques to analyze and evaluate security mechanisms. To understand security properties and requirements, we will look at several network protocols and their properties, including secrecy, authentication, key establishment, and fairness. In parallel, the course will look at several models and tools used in security analysis and examine their advantages and limitations. In addition to fully automated finite-state model checking techniques, we will also study other approaches, such as constraint solving, process algebras, protocol logics, probabilistic model checking, game theory, and executable models based on logic programming.
- CS 261 Internet/Network Security UC Berkeley
- This class aims to provide a thorough grounding in network security suitable for those interested in conducting research in the area, as well as students more generally interested in either security or networking. We will also look at broader issues relating to Internet security for which networking plays a role. Topics include: denial-of-service; capabilities; network intrusion detection; worms; forensics; scanning; traffic analysis / inferring activity; architecture; protocol issues; legality and ethics; web attacks; anonymity; honeypots; botnets; spam; the underground economy; research pitfalls. The course is taught with an emphasis on seminal papers rather than bleeding-edge for a given topic.
- 6.858 Computer Systems Security MIT
- Design and implementation of secure computer systems. Lectures cover threat models, attacks that compromise security, and techniques for achieving security, based on recent research papers. Topics include operating system (OS) security, capabilities, information flow control, language security, network protocols, hardware security, and security in web applications.
- Taught by James Mickens and Nickolai Zeldovich
- Video Lectures and Labs
- Quizzes
- Readings
- Final Projects
- 18-636 Browser Security Stanford
- The Web continues to grow in popularity as platform for retail transactions, financial services, and rapidly evolving forms of communication. It is becoming an increasingly attractive target for attackers who wish to compromise users' systems or steal data from other sites. Browser vendors must stay ahead of these attacks by providing features that support secure web applications. This course will study vulnerabilities in existing web browsers and the applications they render, as well as new technologies that enable web applications that were never before possible. The material will be largely based on current research problems, and students will be expected to criticize and improve existing defenses. Topics of study include (but are not limited to) browser encryption, JavaScript security, plug-in security, sandboxing, web mashups, and authentication.
Courses / Computer Graphics
- CSCI-GA.2270-001 Graduate Computer Graphics New York University
- Step-by-step study computer graphics, with reading and homework at each lecture (Fall2015)
- Lectures
Courses / Misc
- CS 262a Advanced Topics in Computer Systems UC Berkeley
- CS262a is the first semester of a year-long sequence on computer systems research, including operating systems, database systems, and Internet infrastructure systems. The goal of the course is to cover a broad array of research topics in computer systems, and to engage you in top-flight systems research. The first semester is devoted to basic thematic issues and underlying techniques in computer systems, while the second semester goes deeper into topics related to scalable, parallel and distributed systems. The class is based on a discussion of important research papers and a research project.
- Parts: Some Classics, Persistent Storage, Concurrency, Higher-Level Models, Virtual Machines, Cloud Computing, Parallel and Distributed Computing, Potpourri.
- Prerequisites: The historical prerequisite was to pass an entrance exam in class, which covered undergraduate operating systems material (similar to UCB's CS162). There is no longer an exam. However, if you have not already taken a decent undergrad OS class, you should talk with me before taking this class. The exam had the benefit of "paging in" the undergrad material, which may have been its primary value (since the pass rate was high).
- Readings & Lectures
- CS 294 Cutting-edge Web Technologies Berkeley
- Want to learn what makes future web technologies tick? Join us for the class where we will dive into the internals of many of the newest web technologies, analyze and dissect them. We will conduct survey lectures to provide the background and overview of the area as well as invite guest lecturers from various leading projects to present their technologies.
30. Awesome Geek Podcasts
In Spanish
- El gato de Turing - Podcast sobre la actualidad científica y tecnológica.
31. Awesome Ocaml
Datetime
32. Awesome Android
Networking / Field Validation
- Fast-Android-Networking (⭐5.5k) - A Complete Fast Android Networking Library that also support HTTP/2.
33. Awesome Material
CSS
- material-foundation (⭐356) — A Material Design version of Foundation for Sites.
34. Awesome Phalcon
ACL
- PhalconUserPlugin (⭐184) - Plugin based on Vökuró ACL idea
CMS & Blogs
- giada-www (⭐13) - Official website of Giada Loop Machine
35. Awesome Cryptography
Articles / Hash functions
Swift / Git
- IDZSwiftCommonCrypto (⭐477) - Wrapper for Apple's CommonCrypto library written in Swift.
36. Awesome Sass
Libraries and Mixins / Miscellaneous
- retina.js (⭐4.5k) - JavaScript, SCSS, Sass, Less, and Stylus helpers for rendering high-resolution image variants.
Articles / Miscellaneous
37. Nginx Resources
Tutorials
38. Awesome Frege
Introduction / Overview
- Frege (⭐3.6k) - Official website.
Introduction / First Steps
- Getting Started (⭐3.6k) - First steps with Frege on the command line.
- Examples (⭐3.6k) - Some code examples.
- Template (⭐3) - Template for Frege projects.
Introduction / Comparisons
- Frege vs. Haskell (⭐3.6k) - Differences between Frege and Haskell.
- Frege vs. Scala - Differences between Scala and Frege.
Introduction / Official Resources
- Language Reference - Description of the language and its implementation.
- Standard Library API - Frege API documentation.
- Java Runtime API - Java API documentation.
- FAQ (⭐3.6k) - Frequently asked questions.
- Wiki (⭐3.6k) - Official wiki.
- Changelog (⭐3.6k) - Official changelog.
Community / Chat
- Gitter - Gitter channel.
- IRC - IRC channel.
Community / Questions
- Google Group - Frege Google Group.
- Stack Overflow - Frege tag on Stack Overflow.
Community / Social Media
- Twitter - Official Twitter account.
- Dierk König - Core contributor and Groovy expert.
Information / Articles & Blogs
- InfoQ - InfoQ article on Frege.
- Frege Wiki (⭐3.6k) - List of more articles on the Frege wiki.
- Frege Programming Language - Blog of Ingo Wechsung.
Information / Books
- Frege Goodness - Book by Dierk König.
- Frege Quick Reference - Book by Ingo Wechsung.
- Learn You a Frege for Great Good! (⭐50) - Frege adaptation of Learn You a Haskell for Great Good!.
- Frege Wiki (⭐3.6k) - List of more books on the Frege wiki.
Information / Conferences
- ICFP - International Conference on Functional Programming.
Information / Courses
- FP101x - Introduction to Functional Programming on edX.
Information / Talks
- Overview - Frege, a Haskell for the JVM by Dierk König.
- Frege vs. Haskell - FregeDay: Roadmap for resolving differences between Haskell and Frege (Ingo Wechsung).
- ICFP Videos - Videos about functional programming.
- Frege Wiki (⭐3.6k) - List of more talks on the Frege wiki.
Libraries / Talks
- Frege Wiki (⭐3.6k) - List of libraries on the Frege wiki.
Libraries / Android
- FregeAndroid (⭐14) - Frege interface to the Android API.
- frege-on-android (⭐1) - How to use Frege on Android.
Libraries / Big Data
- Spark (⭐5) - Apache Spark with Frege.
Libraries / Databases
- Sirocco (⭐15) - Frege library for relational databases.
- frege-dbc (⭐3) - JDBC with Frege.
Libraries / Email
- Frege Email (⭐1) - SMTP library for Frege.
Libraries / GUI
- FregeFX (⭐31) - Frege bindings for JavaFX.
Libraries / Web Frameworks
- Chinook (⭐27) - Frege web framework based on SparkJava.
- Fregelet (⭐6) - Frege web framework based on servlet.
- Play (⭐19) - Play framework with Frege.
Sample Applications / Games
- 2048 (⭐4) - Frege clone of 2048.
Sample Applications / Web
- RESTful Todo Manager (⭐5) - Task list manager written in Frege.
- Play Framework (⭐19) - Play application written in Frege.
Tools / Build Tools
- Leiningen - Project automation for Frege and Clojure.
- Leiningen Template (⭐8) - Template for frege-lein projects.
Tools / IDEs
- fregIDE (⭐29) - Eclipse plugin for Frege.
Tools / REPLs
- Console REPL (⭐77) - REPL on the console.
- GUI REPL (⭐23) - GUI based REPL.
Tools / Unit Testing
- FrUnit (⭐1) - JUnit for Frege.
39. Awesome Vehicle Security
Presentations
- Can You Trust Autonomous Vehicles? - DEFCON 24 talk by Jianhao Liu, Chen Yan, Wenyuan Xu
40. Awesome Fp Js
Libraries / Data Structures
- Icepick (⭐419) Utilities for treating frozen JavaScript objects as persistent immutable collections
Resources / Articles
- So You Want to be a Functional Programmer - Easy to understand, with some examples, introduction to Functional Programming in Javascript and Elm.
41. Awesome Clojure
Literate Programming
Websites / YouTube
42. Vertx Awesome
Vert.x Event Bus Clients
- Swift (⭐5) - Event bus client for Apple's Swift using the TCP-based protocol (⭐48).
- Python (⭐12) - Event bus client for Python using the TCP-based protocol (⭐48).
- C# (⭐5) - Event bus client for C# using the TCP-based protocol (⭐48).
- C (⭐4) - Event bus client for C99 using the TCP-based protocol (⭐48).
- Go (⭐28)- Event bus client for Go-lang using the TCP-based protocol (⭐48).
Miscellaneous
- Simple File Server (⭐83) - An OpenStack Swift compatible distributed object storage server that can serve and securely store billions of large and small files using minimal resources implemented using Vert.x.
43. Tips
Always rebase instead of merge on pull.
git config --global pull.rebase true
Alternatives:
#git < 1.7.9
git config --global branch.autosetuprebase always
Specific fetch reference
git fetch origin master:refs/remotes/origin/mymaster
44. Awesome Json Datasets
Government
- Scottish Parliament
NASA
- Prev: Oct 10 - Oct 16, 2016
- Next: Sep 26 - Oct 02, 2016