This article is my work these years with the collection of some of the data that I think is still good, the truth of growth needs to accumulate, so long time, it is time to put out to share, may help you.

Welcome to like, let more people see, let the benefits of universal photos.

This article will not be updated, but the project will still be updated.

So, better yet, go to GitHub Star: Stanzhai/BE-A-Professional-Programmer

preface

To become a professional programmer, you need to practice, learn and accumulate, and have a certain breadth of technology, but also have their own depth.

As a tool mad, I have organized all kinds of excellent materials, artifacts and frames used in my work here. After all, a good memory is better than a bad keyboard. This project can be used as a rainy day for myself.

I like to toss, the record of things is relatively miscellaneous, there will be some in all aspects, the content is sorted according to the important level, we take what we need.

Things here will continue to accumulate, welcome Star, also welcome to send PR to me.

directory


  • Expansion pack
    • Technical site
    • Will look at books
    • Daniel blog
    • Making paper
  • Tool post
    • The platform tools
    • Commonly used tools
    • Third Party services
    • Crawler related (fun tools)
    • Safety related
    • Web server performance/stress test tool/load balancer
  • Big data processing/data analysis/distributed tools
  • Web front end
  • Language article
    • Scala
    • Java
    • Python
    • Swift
    • .NET
    • C & C++
  • other
    • Game development related
    • Log aggregation and distributed log collection
    • RTP, Real-time transport protocol and audio and video

Expansion pack

Technical site

  • Online learning: Coursera, edX, Udacity — official courses for silicon Valley companies), MIT Opencourseware, MOOC Institute
  • Hacker News: A great link aggregator for programming
  • Techmeme is a popular website for tech News and blogs.
  • Programming Reddit: Ditto
  • Program Creek
  • Stackoverflow: IT technology q&A site
  • GitHub: the world’s largest source code management platform, many well-known open source projects, such as Linux kernel, OpenStack, etc
  • LeetCode: Why don’t you do these problems and see how good your algorithms are? This is way better than any interview guide.
  • Kaggle,Topcoder: Machine learning, Big Data Competition
  • Nuggets: High quality tech community
  • Developer headlines
  • InfoQ: Enterprise applications, focusing on software development
  • V2EX: way to explore
  • Established technology communities in China: OSChina, Blog Park, CSDN, 51CTO
  • Free IT Ebook: < It eBooks – Free Download – Big Library>
  • Quality Learning Resources: [http://plus.mojiax.com/](http://plus.mojiax.com/)
  • < exercise. IO: crowd-sourced code mentorship.> and
  • DevStore: Developer services store
  • MSDN: Official microsoft-related technology hub, mainly documentation

Will look at books

  • SICP(Structure and Interpretation of Computer Programs)
  • Deep understanding of computer systems
  • 2.
  • One thing
  • One month myth
  • Software capriccio
  • Introduction to Algorithms (MIT Press)
  • Offline mathematics and its applications
  • Design patterns
  • The beauty of the programming
  • Hackers and Painters
  • The programming of mission
  • The Little Schemer
  • Simply Scheme_Introducing_Computer_Science
  • C++ Prime
  • Effective C++
  • TCP/IP, rounding
  • Unix Programming art
  • The nature of technology
  • Software capriccio
  • Computer programming
  • Career: programmer self-cultivation, programmer training, efficient programmer training
  • Introduction to Psychoanalysis, Freud
  • Out of Control, What Technology Wants, Techy Elements, Kevin Kelly
  • Program development psychology
  • Heaven and earth a sarge
  • Done: The art of stress-free work

Daniel blog

  • Cloud Wind (game industry giant) : < Cloud wind BLOG>
  • Wang Yin (many articles sprayed to quite reasonable) : [of course I am talking nonsense](http://www.yinwang.org/)
  • Lisp:
  • RednaxelaFX wrote/answered by RednaxelaFX
  • Chen hao – left ear mouse: < CoolShell – CoolShell>
  • Jeff Atwood:
  • Ruan YiFeng’s Personal Website>
  • The elder brother of the blackboard (security) : [zhihu column] (https://zhuanlan.zhihu.com/taosay)
  • Developers with high visibility on GitHub in China

Making paper

Awesome

  • Awesome: This is a collection of Awesome
  • Awesome2: Similar to the first Awesome
  • Awesome, Awesome, Awesome, Awesome
  • Awesomeness is a great collection of language learning materials
  • awesome-ios-ui
  • awesome-android-ui
  • Awesome-MaterialDesign
  • awesome-public-datasets
  • Awesome -AppSec(System Security)
  • awesome-datascience

Books data

  • free-programming-booksThe Chinese version of
  • Free index of programming Chinese books
  • The Art of Programming for Programmers — Interviews and Algorithms
  • GoBooks
  • Papers we love
  • NLP recommended learning routes and references
  • Super great machine learning materials (framework, library, software), Chinese translation version
  • Machine Learning & Deep Learning materials
  • Docker data collection
  • Learn to use Strom
  • Hadoop Internals
  • Spark Internals
  • Data analysis and data mining in big data era – based on Hadoop
  • How do you make an operating system
  • Learn software development with open source projects
  • Several good open source game engines
  • Write Python articles together, read Python articles together
  • R’s geek Ideal series
  • HTTP Interface Design Guide
  • Share your favorite front-end development sites, blogs, and active developers
  • Readings in Databases
  • Data Science blogs
  • Logging: A unified concept of real-time data that every software engineer should know
  • Android Code Path
  • Android Learn Notes
  • PHP class library framework, data collection

A good project

  • Top 10 C open Source projects to watch
  • 15 small open source projects to learn from
  • IOS -100 open source components
  • Top 10 Material Design Open Source projects
  • Android open source project classification summary

The front end & Node. Js

  • The front-end resources
  • Front-end Development Guide
  • Front-end Skills Summary
  • Front-end resource navigation
  • Collect front-end books
  • The latest front-end development interview questions in 2014
  • Simple and clear JavaScript language tutorials, code examples
  • JavaScript programming specification
  • JavaScript must watch video
  • JavaScript standard reference tutorial (Ruan Yifeng, organized well)
  • JS will see
  • Chinese branch of AngularJS Guide
  • Angular2 learning materials
  • Best practices and style guide for AngularJS apps
  • React-native Learning Guide
  • Learn NodeJS in seven days
  • Node.js Chinese information navigation
  • Nodejs learning Roadmap
  • How to learn NodeJS

Work, tools

  • System administrator tools collection
  • Pro Git
  • Nginx development from beginner to master
  • Google global IP address library
  • Collect information related to remote work
  • Color schemes for hackers
  • Game development tool set, MagicTools
  • Developer toolbox, free-for-dev
  • Making mods
  • Git Style Guide
  • Bast-App

Tool post

The platform tools

  • Phabricator: Software development platform, made by Facebook, now open source, CodeReview artifact (all tools from this down to GitLab can be ignored)
  • Redmine/Trac: Project management platform
  • Jenkins/Jira(not open source) : Continuous Integration systems (Apache Continuum, this is a CI system under Apache, has not had time to explore)
  • Git, SVN: source code version control system
  • GitLab/Gitorious: Build your own GitHub server
  • Postman:RESTful, API testing tool, HTTP interface development necessary magic
  • Sonar: Code quality management platform
  • Nessus: system vulnerability scanner
  • Gitbook: [https://www.gitbook.io/](https://www.gitbook.io/) A good thing for writing books, of course, it is also very good for writing documents (find a lot of product documents is to use it)
  • Travis- CI: Continuous integration essential for open source projects, with GitHub,
  • Trello: simple and efficient project management platform, focusing on kanban management
  • Log aggregation: Graylog, ELK (graylog is recommended, which is basically Splunk)
  • Open source testing tools, communities (Selenium, OpenQA.org)
  • Puppet: An automatic administration engine that works on Linux, Unix, and Windows platforms. The so-called configuration management system is to manage the resources such as files, users, processes and software packages in the machine. Puppet can easily manage one machine or tens of thousands of machines. Other similar tools: CFEngine, SaltStack, Ansible
  • Nagios: System status monitoring alerts, and Icinga(fully compatible with all Nagios plugins, works exactly the same, configuration files and methods. Simple configuration, powerful)
  • Ganglia: Distributed monitoring system
  • Fleet: distributed init system
  • Ansible: Simplifies automatic configuration management and process control for Unix administrators.
  • GeoLite free database
  • JsHint :js code validation tool
  • Haproxy: High availability load balancing (nGINx, LVS)
  • Linux OS performance analysis tools: dstat, iostat, ioTOP, and nmon
  • Kimono: A tool for converting web page information into an API
  • Cluster management tools: PDSH, ClusterSSH, mussh (which can be used to quickly manage Hadoop clusters) IPA-Server for unified authentication management
  • Influxdb: Distributed time series database, combined with Grafana for real-time data analysis
  • Dot: Programmer drawing tool (a language and a tool)
  • Graph::Easy: (Ascii Art tool) Graph::Easy: (Ascii Art tool) Graph::Easy: (Ascii Art tool) Graph::Easy: (Ascii Art tool) Other similar tools Asciiflow, vi plugin: drawit!
  • Spf13 – VIM: Let your Vim fly!
  • Kubernetes: container cluster management system
  • Gatling: Server performance stress testing tool
  • Systemtap: Linux kernel explorer, kernel debugger
  • Cygwin: Unix-like emulation environment under Windows
  • MinGW: GNU toolset for Windows

Commonly used tools

  • Mac under the magic weapon
  • Asciinema: Terminal screen recording magic device
  • Fiddler: a great front-end Web debugging tool, especially for the underlying HTTP protocol. For general use, a native debugging tool such as Chrome is sufficient, but for special use
  • Charles: Web proxy debugging tool for Mac, similar to Fiddler
  • Wireshark: a well-known network packet analysis tool
  • PowerCmd: a powerful alternative to Windows Cmd
  • RegexBuddy: A powerful regular expression testing tool
  • Soure Insight: Source code reader
  • SublimeText: Programmer’s favorite editor
  • Database.NET: a general-purpose relational database client based on. NET 4.0 development, do simple processing or quite convenient
  • Navicat Premium: Clients that support MySql, PostgreSQL, Oracle, Sqlite, and SQL Server are not as versatile as Database.NET, but perform much better than Database.NET. They also have built-in backup functionality for regular database backups.
  • Synergy: One set of keyboards and mice that controls multiple computers on a LAN
  • DameWare: A set of remote assistance tools (I use to control large screens in my company)
  • Radmin: Remote control tool, used for a period of time DameWare, but also cracked, for Windows 7 support is not good, or found this easy to use
  • Listary: A “super tool” that can dramatically increase the speed and efficiency of your Windows file browsing and searching.
  • Clover: Add multiple tabs to Explorer, I use it at work, use Explorer like Chrome, it’s very convenient (it’s Windows)
  • WinLaunch: Simulates the Launch tool for Mac OS
  • 4. Fritzing: A circuit diagram
  • LICEcap: GIF tutorial making
  • Git, SVN: version control system
  • Enigma Virtual Box (encapsulating exe, DLL, etc into an executable program)
  • Open DBDiff(for SqlServer) database synchronization
  • SymmetricDS: Database synchronization
  • BIEE,Infomatica, SPSS, WEKA, R language: Data Analysis
  • CodeSmith, LightSwitch: Code generation
  • Pandoc: Markdown conversion tool for book publishing. I used to play Docbook, but now Markdown is all the rage.
  • Window Magnet[Mac] : Enhanced Mac Window management features, like Windows 7 with the ability to drag and drop Windows to the edge of the screen to adjust automatically
  • Log explorer: view SqlServer logs
  • Dependency Walker: Query Windows application DLL dependencies
  • Shairport4w: Transfer audio from iPhone, iPad, iPod to PC via AirPlay protocol
  • Ngrok: Intranet penetration tool
  • Axure: Rapid prototyping tool, and an online mapping tool a startup team in the country did a great job with it.
  • Origami: Next generation interactive design artifact
  • Baidu Brain Map: baidu Brain Map – a convenient thinking tool
  • Tinyproxy :(Linux) a small proxy server supports HTTP and HTTPS
  • EaseUS Partition Master is a super simple Partition adjustment tool, which is very fast. If you don’t have enough disk C, use it to Partition some space from disk D without reinstalling the system.
  • CheatEngine: play games to modify the memory value of the necessary artifact (remember when I play Xuanyuan Sword 6 used it, super convenient)
  • ApkIDE:Android decompiler magic
  • Turn, wall tools (by the | | door, day line browser, free VPN:www.mangovpn.com/), find the most convenient also belong to the Lantern, super convenient free update (in 2015-08-22)
  • Design tools: Sketch, OmniGraffle
  • -Leonard: MindManger
  • Tools: MagicDraw Uml diagrams
  • Innotop: MySql status monitoring tool
  • Ink knife: A much simpler prototyping tool than Axure for rapid prototyping
  • Karabiner: Mac only, modify the key of the magic device, mechanical keyboard necessary
  • Timing: Mac only, where do you spend your time
  • F. lux: eye protector, filter blue light, essential for programmer eye protector
  • LaTeX: based on Ε χ typesetting system, it makes writing papers more convenient
  • Antlr: An open source parser that lets you write a small parser without any pressure

Third Party services

  • DnsPod: a good DNS only service resolution provider
  • DigitalOcean: an overseas cloud hosting provider, cheap, SSD disk, used for a period of time overall ok, but after all, it is overseas, the Internet speed is relatively slow. The domestic is Aliyun. Another well-known one is Linode, which is said to be much faster than DigitalOcean
  • Mobile terminal push services: Getui, JPush, Yunba
  • LeanCloud: Mobile application development services, including data storage, user management, message push, app statistics, social sharing, real-time chat, etc
  • Color Hunt: beautiful and cool Color matching website, good news for programmers
  • Heroku: PaaS platform

Crawler related (fun tools)

  • Phantomjs(Web automated testing, server-side rendering, etc.)
  • BerserkJS (an improved version based on Phantomjs)
  • SlimerJS
  • CasperJS
  • selenium
  • HtmlUnit (open source Java page analysis tool, also a Headless browser)

Safety related

  • SQL injection detection: SQLMap, Haviji
  • Port scanning: NMAP
  • Penetration test: BurpLoader
  • Sqltools: used to exploit SQL vulnerabilities
  • Snort: Intrusion detection

Web server performance/stress test tool/load balancer

  • Ab: Ab is a powerful test tool provided by Apache
  • Curl -loader: simulates and tests Web loads
  • Http_load: The program is very small, less than 100K after decompression
  • Webbench: A web site stress test tool for Linux that simulates up to 30,000 concurrent connections to test a site’s load capacity.
  • Siege: An open source stress testing tool that allows users to execute concurrent visits to a WEB site based on their configuration, log the duration of all requests to each user, and repeat the process for a certain number of concurrent visits.
  • Squid (front-end cache), nginx (load), NodeJS (yes it can, write your own high performance load balancer) : common load balancers
  • Piwik: Open source website access statistics system
  • ClickHeat: open source site ClickHeat map
  • HAProxy: high-performance TCP /HTTP load balancer
  • ElasticSearch: Search engine based on Lucene
  • Page Speed SDK and YSLOW
  • HAR Viewer: HAR analysis tool
  • Protractor: E2E (End to End) Automated test tool

Big data processing/data analysis/distributed tools

  • Hadoop: Distributed file systems, combined with their MapReduce programming model, can be used for batch processing of massive amounts of data (not to mention Hive, Pig, HBase). Cloudera’s Hadoop branch, CDH5, Hadoop based on YARN MRv2 integrates Spark and can be directly used in the production environment, which is very useful for enterprises to quickly build data warehouses.
  • Spark: large-scale data processing framework. It can handle three common data processing scenarios in enterprises: complex batch data processing; Interactive Query based on historical data; Streaming Data Processing based on real-time data, CSND has a good article
  • In addition to Spark, several other good computing frameworks include Kylin, Flink, and Drill
  • Ceph:Linux Distributed File System (Features: Centrless)
  • – Storm: Real-time streaming data processing, check out an introduction by IBM (and Yahoo S4, which also does streaming data processing)
  • Druid: Storage system for real-time data analysis
  • Ambari: Big data platform building, monitoring tools; Similarly, CDH
  • Tachyon: Distributed memory file system
  • Mesos: Computing Framework A cluster manager that provides efficient resource isolation and sharing across distributed applications or frameworks
  • Impala: A new generation of open source big data analysis engine that provides Sql semantics and is faster than Hive
  • Presto: Facebook’s open source tool, big data distributed SQL query engine
  • SNAPPY: a fast data compression system suitable for the Hadoop ecosystem
  • Kafka: distributed message queue system with high throughput
  • ActiveMQ: Is the most popular and powerful open source message bus from Apache
  • MQTT:Message Queuing Telemetry Transport (MQTT) is an im protocol developed by IBM that has the potential to become an important part of the Internet of Things (iot)
  • RabbitMQ: Remember that’s what OpenStack uses
  • ZeroMQ: Claims to make distributed computing easier. It is a distributed message queue, as described in an article on Cloud Wind
  • Open source log collection systems: Scribe, Chukwa, Kafka, Flume. Here’s a comparison article
  • Zookeeper: Reliable distributed coordinated open source project
  • Databus: LinkedIn real-time low latency data capture system
  • Data source acquisition: Flume, Google Refine, Needlebase, ScraperWiki, BloomReach
  • Serialization techniques: JSON, BSON, Thrift, Avro, Google Protocol Buffers
  • NoSql: ScyllaDB (claimed to be the world’s fastest NoSql), Apache Casandra, MongoDB, Apache CouchDB, Redis, BigTable, HBase, Hypertable, Voldemort, Neo4j
  • MapReduce related: Hive, Pig, Cascading, Cascalog, MRJob, Caffeine, S4, MapR, Acunu, Flume, Kafka, Azkaban, Oozie, Greenplum
  • Data processing: R, Yahoo! Pipes, Mechanical Turk, Solr/ Lucene, ElasticSearch, Datameer, Bigsheets, Tinkerpop
  • NLP Natural Language processing: Natural Language Toolkit, Apache OpenNLP, Boilerpipe, OpenCalais
  • Machine learning: TensorFlow (Google), WEKA, Mahout, SciKits. Learn, SkyTree
  • Visualization techniques: GraphViz, Processing, Protovis, Google Fusion Tables, Tableau, Highcharts, EChats (baidu is good), Raphael. Js
  • Kettle: Open-source ETL tool
  • Pentaho: Open source BI system with workflow at its core
  • Mondrian: Open source Rolap server
  • Oozie: Open-source Hadoop workflow scheduling engine similar to Azkaban
  • Open source data analysis visualization tools: Weka, Orange, KNIME
  • Cobar: Alibaba’s MySql distributed middleware
  • Data cleansing: Data Wrangler, Google Refine

Web front end

  • Material Design: Google product, must be boutique
  • Vue.js: Borrowed from Angular and React JS frameworks, the design concept is relatively advanced
  • GRUNT: js task runner
  • Sea-.js: JS modularization
  • Knockout.js: MVVM development foreground, binding technology
  • Angular.js: Develop WEB applications with hyper-dynamic HTML & JS!
  • Highcharts. Js, Flot: Commonly used Web charting plug-in
  • NVD3: Chart library based on D3.js
  • Raw: A very good advanced data visualization tool
  • Rickshaw: A library of sequential ICONS that can be used to build real-time charts
  • JavaScript InfoVis Toolkit: Another Web data visualization plug-in
  • Pdf.js, display Pdf in HTML
  • ACE, CodeMirror: Html code editor
  • NProcess: Gorgeous loading progress bar
  • Impress. Js: Allows you to create stunning displays of content (similar to reveal)
  • Threejs: 3 dweb library
  • Hightopo: A 2D and 3D VISUAL UI library based on Html5
  • Jquery.datatables.js: highly flexible table plugin
  • Raphael: JS, Canvas drawing library, later found that the graph of Baidu index was drawn with it
  • Director. Js: JS routing module, front-end routing, Nodejs back-end routing, etc., suitable for constructing single page applications
  • Pace. js: page loading progress bar
  • Bower: Web package manager
  • Jsnice: an interesting js decompression tool to guess the compressed variable name, Statistical renaming, Type inference and Deobfuscation
  • D3.js: is a JavaScript based data presentation library (similar to p5.js)
  • Zepto.js: jquery-mobile is a mobile alternative to jQuery.
  • UI framework: Foundation, Boostrap, Pure, EasyUI, Polymer
  • Here are some must-visit sites for UI designers: Dribbble, Awwwards, UnMatchedStyle, UIMaker
  • Mozilla Developer Center: Mozilla Developer Network
  • Icon resources: IcoMoon (my favorite), Font Awesome, Themify Icons, FreePik, Glyphicons
  • ArtDialog: Very beautiful dialog box
  • AdminLTE: github open source project, based on Boostrap3 backend management page framework
  • Responding.js: Let Internet Explorer 6-8 support responsive design for those who don’t understand love
  • Require.js: js module loading library
  • Select2: A selection box alternative library with more features than chosen
  • AngularUI: UI library that integrates angular.js
  • Normalize.css: a library that uses modern standards to render HTML consistently across browsers
  • CreateJS: Html5 game engine
  • Less,Compass: Simplifies CSS development
  • Emojify.js: used to automatically recognize Emoji text on web pages and display them as images
  • Simditor: a nice open source HTML editor, simple and efficient
  • Sencha: Mobile development framework based on HTML5
  • SuperScrollorama+TweenMax+ Skrollr: Create cool parallax scrolling animations for web pages
  • Jquery-smooth-scroll: same as above, smooth scroll plug-in
  • Animate. CSS: A CSS library that implements various animation effects
  • Emmet: A prerequisite for front-end engineers, predecessor of ZenCode
  • React: The Js UI library from Facebook
  • Highlight.js: a library for syntax highlighting
  • GoJS: Html5 interactive chart library. See demo for more hierarchical charts.
  • 10 Pure CSS (Mostly) Flat Mobile Devices: <11 Pure CSS Mobile Devices from @marvelapp>
  • CodePen: [CodePen](http://codepen.io/)
  • Jsfiddle:

Language article

Ongoing: Scala, Python, Lua, JavaScript, Go

Stay with:

  • Racket
  • OCaml
  • Rust
  • Julia

Scala

  • Scala Standard Library API
  • Scala School! : A Scala tutorial by Twitter
  • A Tour of Scala: Tutorial introducing the main concepts of Scala
  • Scala Overview on StackOverflow: A list of useful questions sorted by topic
  • Programming in Scala, the latest edition of Programming in Scala, 3rd edition
  • Scala for the Impatient
  • Scala in Depth
  • Programming Scala Dean Wampler and Alex Payne. O ‘Reilly 2009
  • Scala By Example
  • Scala Cheatsheet learning pattern matching good information
  • Glossary of Scala and FP terms
  • Metascala: A JVM written in Scala
  • LMS: Program Generation and Embedded Compilers in Scala

Java

  • Common ides: IntelliJ IDEA(highly recommended), Eclipse, Netbeans
  • Fastutil: A Java collections framework for better performance
  • Guava: Google’s Java toolkit, widely used
  • Curator: Netflix’s open source Zookeeper Client library, which simplifies Zookeeper client programming, is now a separate project under Apache. Spark HA also uses this product.
  • Rx(Reactive Extensions) framework: vert. x, RxJava(More commonly used on Android), Quasar
  • FindBugs: Code static analysis tool that finds code defects
  • Java decompiler tools: Luyten, JD-GUI
  • Drools: Rules engine
  • Jersey: Java RESTful framework
  • Canal: Binlog incremental subscription & consumption component from Alibaba
  • Web development related: Tomcat, Resin, Jetty, WebLogic, commonly used components Struts, Spring, Hibernate
  • Netty: Asynchronous event-driven network application programming framework, good for high concurrency network programming (NIO framework, Spark 1.2.0 uses Netty instead of NIO)
  • MINA: Simply develop high performance and high reliability web applications (also a NIO framework) that many mobile game servers use to develop
  • JOOQ: Java Orm framework
  • Janino: Super small and fast Java compiler used by Spark’s Tungsten generator
  • Activiti: Workflow engine, similar to jBPM, Snaker
  • Perfuse: A user interface for presenting structured and unstructured data in interactive visualizations.
  • Gephi: Complex network analysis software, which is mainly used for a variety of networks and complex systems, dynamic and hierarchical graph interactive visualization and exploration open source tools
  • Nutch: Well known crawler project, hadoop grew out of this project
  • Web-harvest: Web data extraction tool
  • POM tools: Maven+Artifactory
  • Akka: a framework for concurrent processing based on the Actor model
  • EclEmma: Coverage testing tool
  • Shiro: Security framework
  • Joda-time: simplifies time processing
  • Parboiled: Expression parsing
  • Dozer: Deep copy artifact
  • Dubbo: Distributed service framework produced by Alibaba
  • Jackson Databind: Json serialization tool (FastJSON, SimpleJSON)
  • Atomikos: Distributed transaction management
  • BoneCP: database connection pool component with excellent performance, said to be much faster than C3P0
  • ProGuard: ObConfuscation Tool is a powerful obfuscation tool
  • S-99:99 Scala related questions

Python

  • PyCharm: Best Python IDE
  • Eric,Eclipse+ Pydev, a good Python IDE
  • PyWin:Win32 API programming package
  • Numpy: Scientific computing package, mainly used to handle large matrix calculations, etc., in addition to SciPy, Matplotlib
  • GUI related: PyQt, PyQwt
  • Supervisor: process monitoring tool
  • PyGame: Python based multimedia development and game software development module
  • Web Framework: Django’s open source Web development framework encourages rapid development and follows an MVC design

Swift

  • Swift Selected Materials
  • 43 excellent open source projects

The client

  • Encyclopedia Swift
  • HackerNews Swift
  • Zhihu Daily app

Framework

  • Twitter framework
  • Mac simple HTTP Server Swifter

Small tools

  • Swift Alarm
  • Swift Note
  • Swift RSS Reader
  • Swift – PM2.5 query app

The game

  • Flappy Swift
  • FanFan Swift

.NET

  • Xilium.CefGlue: based on the CEF framework. NET encapsulation, based on. NET developed Chrome kernel browser
  • CefSharp: again, with a WebKit package, C# and Js interaction will be much easier
  • Netz: free.net executable file compression tool
  • SmartAssembly: Perverted.NET code optimization obfuscation tool
  • NETDeob0:.net anti-obliquation tool, it’s a hell of a lot better than that (there’s also De4dot, on GitHub, which is open-source)
  • ILMerge: Merge all referenced DLLS and exe files into one exe file
  • ILSpy: Open source. Net program decompiler
  • Javascript.NET: a nice JAVASCRIPT execution engine that encapsulates V8
  • NPOI: Excel operation
  • DotRAS: module for remote access services
  • WinHtmlEditor: An HTML editor under Winform
  • SmartThreadPool: thread pool with advanced features implemented in C#
  • Snoop: WPF Spy Utility
  • Autofac: Lightweight IoC framework
  • HtmlAgilityPack: Html parsing tool
  • Quartz.NET: Job scheduling
  • HttpLib: @codeplex simplifies HTTP requests
  • SuperSocket: simplified Socket operation, based on his SuperWebSocket, can develop an independent WebSocket server
  • DocX: Operating Word files without Office installed
  • Dapper: Lightweight ORM class with good performance
  • HubbleDotNet: a full-text search system that supports access to databases
  • FastJSON: @codeProject, a high-performance JSON serialization class
  • ZXing.NET: @codeplex, QR, barcode related
  • Nancy: lightweight Http server, make a small Web application without IIS (Nancy.Viewengines.Razor, add Razor engine)
  • AntiXSS: Microsoft Web Protection Library for XSS
  • Jint: JavaScript interpreter
  • Cs-script: executes C# code files as scripts
  • Jexus: a high-performance, easy-to-use, free ASP.NET server for Linux
  • Clay: make dynamic more flexible and write in C# like js
  • DynamicJSON: You don’t have to define a data model to get JSON data
  • SharpPcap: C# version of WinPcap call end, cool network package analysis library (with PacketNotNet for package protocol analysis)
  • Roslyn: C#, VB compiler
  • ImageResizer: server free control of image size, really is a magic tool also, on the mobile side of the small image, PC side of the large image, CMS is very convenient to use it
  • UI Related: DevExpress, Fluent(Office 07 Style), MUI (Modern UI for WPF)
  • NetSparkle: Apply automatic update components
  • ConfuserEx: Open source. Net obfuscation tool
  • ServiceStack: Open source high-performance Web services framework for building high-performance REST services
  • Expression Evaluator: Eval for C#, handling string expressions
  • NuGet Must Haves
  • Reactive Extensions (Rx): Asynchronous, event-driven programming package, Rx = Observables + LINQ + Schedulers

C & C++

  • Thrift: For the development of extensible, cross-language services (Avro, Google Protobuf, for example).
  • Libevent is an event-triggered network library. It is applicable to Windows, Linux, and BSD platforms. It uses the system call management event mechanism such as Select, epoll, and KQueue internally. (Oh, and there’s a Libev.)
  • Boost: Without further ado, a quasi-C ++ standard library
  • Valgrind\Ptmalloc\Purify: Debugging tool
  • NetworkServer: Acceptor ->dispatcher->worker
  • Breakpad: Crash dump and analysis module, used in many CrashReport applications
  • UI interface related: MFC, BCG and QT are not mentioned, a bit more high-end Html and DirectUI technology: Libcef, HtmlLayout, Duilib, Bolt, non-C ++, and Node-WebKit, which integrates the Node and WebKit cores.

other

Game development related

  • MINA: Using Java to develop mobile and page game servers (and also Netty, which is NIO based)
  • Hp-socket: see some pager servers built using this
  • Unreal: Unreal engine, C++, there are many games based on this engine
  • OGRE: famous 3D graphics rendering engine, Tianlong Eight part OL, torchlight and many other games have used this engine
  • OpenVDB: dreamworks C++ special effects library, open source
  • Cocos2d: Cross-platform 2D game engine
  • Unity3d: Cross-platform 3D game engine, very popular
  • Nodejs: A lot of people are using it for mobile games and servers (Pomelo of NetEase)

Log aggregation and distributed log collection

  • Scribe: Facebook’s (NodeJS + Scribe + inotify synchronous log)
  • Logstash: A powerful log collection system, you can develop a powerful log analysis platform based on logStash + Kibana + ElasticSearch + Redis
  • Log. IO: a real-time log collection system developed by NodeJS

RTP, Real-time transport protocol and audio and video

  • RTP, RTCP, RTSP-> librtp, JRTPLIB(RFC1889 standard)
  • Ring buffer for real time data transmission
  • SDL,ffmpeg,live555,Speex
  • Red5: Develop open source Flash streaming media server in Java. It supports: audio (MP3) and video (FLV) into playback streams; Record client playback streams (FLV only); Shared object; Live broadcast stream release; Remote call.

PS: I don’t know when Markdown is supported. It’s really hard to write articles without Markdown