background preloader

Programming

Facebook Twitter

【不周山之读薄 CSAPP】零 系列概览. 曾经的《深入理解计算机系统》课程笔记重新启航出发,更清晰的知识结构,更细致的概念分析,更紧密的课程关联。

【不周山之读薄 CSAPP】零 系列概览

从文字到图片完全原创,希望能给大家不一样的阅读体验。 更新历史 2017.03.18: 更新链接2016.12.20: 内容更新2016.04.16: 完成初稿 《深入理解计算机系统》是 CMU 教授 Bryant 和 O’Hallaron 共同撰写的一本计算机学科经典入门教材。 先从数据的表示开始,自然而然引出用汇编描述的计算机基本运行的方式,接着介绍控制流、过程调用到跳转等高级话题,以了解了计算机运行的模式,并据此给出一些程序设计的技巧作为过渡。 这个系列脱胎于我之前连载的《深入理解计算机系统》学习笔记(因为包含课程相关信息,在学校的要求下删除)。 下面通过问答的形式,来对这个系列做简要的介绍。 为什么要写? 这是一本非常经典的教材,也是一本大部头,第三版一千多页,并不是所有人都能坚持看完,希望以『读薄』的形式,让更多人能领略到经典的风采。 经过大概一个星期的筹划,老版课程笔记以『读薄/读厚』系列重生。 能带给读者什么? 对计算机系统有更加全面且深入的认识。 这也是我写新技术系列的一次尝试,让互联网上高质量的中文内容多一些,再多一些。 有什么局限? 这不是一个可以速成,看看就懂的系列,需要自己动手去实践。 在这个快节奏的时代,慢一点,再慢一点。 主要写什么? 【不周山之读薄 CSAPP】壹 数据表示. Python-select详解(select、epoll)

The ANTLR mega tutorial - Federico Tomassetti - Software Architect. 从antlr扯淡到一点点编译原理. GitHub - daluu/plrobotremoteserver: Moved my project here due to Google Code's demise. Frontier. Frontier::Daemon - receive Frontier XML RPC requests use Frontier::Daemon; Frontier::Daemon->new(methods => { 'rpcName' => \&sub_name, ... }); Frontier::Daemon is an HTTP/1.1 server that listens on a socket for incoming requests containing Frontier XML RPC2 method calls.

Frontier

Frontier::Daemon is a subclass of HTTP::Daemon, which is a subclass of IO::Socket::INET. Frontier::Daemon takes a `methods' parameter, a hash that maps an incoming RPC method name to reference to a subroutine. Frontier::Daemon takes a `use_objects' parameter that if set to a non-zero value will convert incoming <int>, <i4>, <float>, and <string> values to objects instead of scalars.

GitHub - Chetic/robotframework-async: Generic Robot Framework library for asynchronous keyword execution. Python - Meaning of @classmethod and @staticmethod for beginner? Understanding Python's "with" statement. Fredrik Lundh | October 2006 | Originally posted to online.effbot.org Judging from comp.lang.python and other forums, Python 2.5’s new with statement (dead link) seems to be a bit confusing even for experienced Python programmers.

Understanding Python's "with" statement

As most other things in Python, the with statement is actually very simple, once you understand the problem it’s trying to solve. Consider this piece of code: set things up try: do something finally: tear things down Here, “set things up” could be opening a file, or acquiring some sort of external resource, and “tear things down” would then be closing the file, or releasing or removing the resource. If you do this a lot, it would be quite convenient if you could put the “set things up” and “tear things down” code in a library function, to make it easy to reuse. Understanding Python's "with" statement. A guide to Python's function decorators.

Python is rich with powerful features and expressive syntax. One of my favorites is decorators. In the context of design patterns, decorators dynamically alter the functionality of a function, method or class without having to directly use subclasses. This is ideal when you need to extend the functionality of functions that you don't want to modify. We can implement the decorator pattern anywhere, but Python facilitates the implementation by providing much more expressive features and syntax for that.

In this post I will be discussing Python's function decorators in depth, accompanied by a bunch of examples on the way to clear up the concepts. Essentially, decorators work as wrappers, modifying the behavior of the code before and after a target function execution, without the need to modify the function itself, augmenting the original functionality, thus decorating it. What you need to know about functions. 跳出面向对象思想(二) 多态 - Casa Taloyum. Django templates · Django Girls Tutorial. Time to display some data!

Django templates · Django Girls Tutorial

Django gives us some helpful built-in template tags for that. You see, in HTML, you can't really write Python code, because browsers don't understand it. They know only HTML. We know that HTML is rather static, while Python is much more dynamic. Example: Software Architecture Document. A description of the logical view of the architecture.

Example: Software Architecture Document

Describes the most important classes, their organization in service packages and subsystems, and the organization of these subsystems into layers. Also describes the most important use-case realizations, for example, the dynamic aspects of the architecture. Class diagrams may be included to illustrate the relationships between architecturally significant classes, subsystems, packages and layers. The logical view of the course registration system is comprised of the 3 main packages: User Interface, Business Services, and Business Objects. The User Interface Package contains classes for each of the forms that the actors use to communicate with the System. The Business Services Package contains control classes for interfacing with the billing system, controlling student registration, and managing the student evaluation. Espymetrics/DESIGN.rst at master · mahmoud/espymetrics. jTopo Demo. $(document).ready(function(){ var canvas = document.getElementById('canvas'); var stage = new JTopo.Stage(canvas); showJTopoToobar(stage); var scene = new JTopo.Scene(); scene.background = '.

jTopo Demo

/img/bg.jpg'; function node(x, y, img, name){ var node = new JTopo.Node(name); node.setImage('. $(document).ready(function(){ var canvas = document.getElementById('canvas'); var stage = new JTopo.Stage(canvas); //显示工具栏 showJTopoToobar(stage); var scene = new JTopo.Scene(); scene.background = '. /img/bg.jpg'; function node(x, y, img, name){ var node = new JTopo.Node(name); node.setImage('. Leetcode/strong-password-checker.py at master · bonfy/leetcode. Data_Structures_Algorithms_In_Python/SpiralPrint.py at master · anubhavshrimal/Data_Structures_Algorithms_In_Python. Design Patterns in Python. Proceedings of the 6th International Python Conference Vespe Savikko Software Systems Laboratory Tampere University of Technology FIN-33101 Tampere, Finland vespe@cs.tut.fi Abstract The choice of implementation language affects the use of design patterns.

Design Patterns in Python

Microservices: The Essential Practices. Before we jump and try to explore the practices we must master in order to successfully implement microservices architecture, let us briefly refresh our understanding of monolithic applications.

Microservices: The Essential Practices

Monolithic application is built as a single unit that, with time, increases its size. While the increase in features is bound to result in increase of the system’s complexity, monolithic architecture tends to exponentially multiply that complexity. The reason behind that is partly due to layering approach that tends to be enforced to all use cases. You start with a design that has, let’s say, four layers; API, business layer (BL), data access layer (DAL) and database itself. Once that is established, you make a rule that all new features should be developed in a way that all the layers are used. More and more features are developed that way but with time things stop being linear. The result is the increase in difficulties we are facing when trying apply changes. Microservices - Full Stack Python. Microservices are an application architecture style where independent, self-contained programs with a single purpose each can communicate with each other over a network.

Microservices - Full Stack Python

Typically, these microservices are able to be deployed independently because they have strong separation of responsibilities via a well-defined specification with significant backwards compatibility to avoid sudden dependency breakage. Microservices follow in a long trend of software architecture patterns that become all the rage. Previously, CORBA and (mostly XML-based) service-oriented architectures (SOA) were the hip buzzword among ivory tower architects. However, microservices have more substance because they are typically based on RESTful APIs that are far easier for actual software developers to use compared with the previous complicated XML-based schemas thrown around by enterprise software companies. The Netflix Simian Army. We’ve talked a bit in the past about our move to the cloud, and John shared some of our lessons learned in going through that transition in a previous post.

The Netflix Simian Army

Recently, we’ve been focusing on ways to improve availability and reliability and wanted to share some of our progress and thinking. The cloud is all about redundancy and fault-tolerance. Since no single component can guarantee 100% uptime (and even the most expensive hardware eventually fails), we have to design a cloud architecture where individual components can fail without affecting the availability of the entire system.

In effect, we have to be stronger than our weakest link. Adrian Cockcroft presentations. Cloud Native Architecture at Netflix by Adrian Cockcroft - YOW! 2013. CS140: Operating Systems. CS352 Prerequisites. Throughout the course, I will make certain assumptions about your knowledge. In particular, I will assume the following: You have taken an undergraduate course in operating systems and understand basic operating system concepts such as processes, threads, file system implementation, mutual exclusion, process synchronization, and process scheduling. You can program proficiently in the C or C++ programming language as well as Java.

If you know one, you can learn the other without too much grief. A tutorial that seems pretty good (on casual inspection) on C can be found at I learned C eons ago via Kernighan and Ritchie's text (it was the thinnest book I could find). If you are unfamiliar with any of these items, it should not necessarily deter you from taking the course (most are easy to learn) but you may wish to speak with me. Assignments — Operating Systems. Written assignments must be handed in to the handin bin by 10pm on the given due date. Programs must be handed in by 11:59pm on the given due date For all the Weenix related projects, we will not be posting individual assignment pdfs. Please instead see the docs/ folder in the weenix sources. A copy of the pdf will be posted here for your convenience. Practice Midterms. Traveling Notes: 2011 所得稅心得: ESPP,RSU,與 Turbo tax 初體驗. 又到了麻煩的報稅季節。 Getting Started. RegExr: Learn, Build, & Test RegEx. Electrical Engineering and Computer Science.

Electrical Engineering and Computer Science. 思科认证网络工程师. 思科认证网络工程师(英语:CCNA, Cisco Certified Network Associate)認證是由思科系統所頒發的,是現時大多數從事資訊科技或有志投身此行業的人士常考取的專業證書之一。 其考試範圍及內容著重於現今流行的網絡技術及思科系統的路由器、交換器等產品的設定、調校及故障排除。 CISCO強調持有CCNA認證的考生應具有相應技術,為了確保思科證書的認受性,以及雇主會以思科認證作為評核員工才能的標準,CISCO將在它的很多考試中增加模擬操作題,這更能正確地衡量出考生的真實水準,也能增加雇主對思科證書的重視,CISCO相信這樣對CISCO持有思科證書的人以及雇主,長遠來說都是有利的。 LeetCode Online Judge. Workday. 操作系统原理 Operating Systems. 课程曾在 Coursera 上开课,传送门 >> 任何计算机都必须在加载相应的操作系统之后,才能构成一个可以运转的、完整的计算机系统。 Linux文件共享服务器Samba的概念和配置详解_技术文档_组装电脑之家. 在Linux(Unix)主机之间可以使用NFS服务实现文件共享。 而且是现实来也十分方便,在Windows主机之间使用Windows文件共享同样可以实现包括网络文件在内的系统资源的共享。

Practical tips for using Git with large Subversion repositories. So you want to use Git with Subversion? That’s a great idea! If the Subversion repository is small, you should not have too big problems. If on the other hand the repository is relatively large, you may have quite a few issues. What is large? Let’s define large as: cloning the trunk takes more than 4 hours. Running Kore in production behind nginx proxy - Andreas Pfohl. As written in the last post my primary interrest is writing web applications in C with Kore. The post shows how to create a small application and run it in development mode.

In production there are two methods to run Kore. The first is to run Kore standalone. That means Kore is directly bound to a port on a public IP address. It is no problem to configure Kore that way because it is intended. Job Description - Senior Software Engineer (1500032050) Are you interested in pioneering the next generation of personalization that blends physical and virtual worlds leveraging the richest map data in existence? Do you want to use multiple digital channels, social networks, and real-time predictive analytics at scale to create an in-the-moment location experience that enriches people’s lives? HERE is the leader in the Location Cloud business – the map for the 21st century.

Using cloud infrastructure we are delivering mobile apps and services that help people to solve daily challenges and to make their lives more rewarding. It is our goal to help people live delightful, safer, more fruitful, and more sustainable lives while respecting their privacy by providing the right map, and the right experience, for every moment. Our global reach is unmatched. We’re expanding our team in Seattle to realize this vision, and we are searching for engineers with expertise in big data platforms, machine learning and predictive analytics. Linux下面的C語言使用getopt parse command line參數 « 國王的耳朵是驢耳朵. Simplest Spring MVC Hello World Example / Tutorial - Spring Model - View - Controller Tips. 海量数据处理算法—Bit-Map - guisu,程序人生。 逆水行舟,不进则退。 Page from Begin Programming: Build Your First Mobile Game - University of Reading.

Writing web software in C with Kore. Do things differently. Untitled. 10 sFTP Command Examples to Transfer Files on Remote Servers in Linux. How do I become a data scientist? 应用python编写简单新浪微博应用(一) — 小倩☆惜取花开时. Scraping data from Sina Weibo using Python. How to use the APIs to collect data from Sina Weibo. The Open Source Data Science Masters.

CS341: Project in Mining Massive Data Sets (Spring 2014) Learn Data Science - Quora. Thamnett/PDS-2013. Kaushikreddy/PDS. PDS/ClassTwoNotes at master · lin1988/PDS. PDS/user.py at master · lin1988/PDS. PDS/data_analysis_reco.py at master · joehooper/PDS. Thamnett/PDS-2013. Big Data and Mobile Payments. CentOSにpython 2.7.3をインストールする手順 - memo.yomukaku.net. Install Numpy, Schipy, Matplotlib and etc. on Amazon Linux AWS-ec2 for Python3.

LJamesHu/Practical-Data-Science-Homework. Practical Data Science, Fall 2012. Exporting mysql table to .txt or .doc file using PHP. Building beautiful websites with Bootstrap: A case study. Www.bjt.name/upload/pdf/Text Mining in R.pdf. Algorithm - Classifying Text Based on Groups of Keywords? 一种根据关键字进行分类的文本分类算法 - lucene爱好者 - ITeye群组. Information Modelling and Knowledge Bases XX. Text%20Mining%20in%20R.pdf. 6. Learning to Classify Text. The Elements of Statistical Learning by Jerome Friedman, Trevor Hastie, and Robert Tibshirani. Authors/G_M/Hastie/WriteUp/weatherwax_epstein_hastie_solutions_manual.pdf. Static/ESL-Solutions.pdf. 落园 » 统计学习精要(The Elements of Statistical Learning)课堂笔记系列.

Ajtulloch/Elements-of-Statistical-Learning. Ajtulloch/Elements-of-Statistical-Learning. Authors/G_M/Hastie/WriteUp/weatherwax_epstein_hastie_solutions_manual.pdf. Chapter 7: Exercise 1. The 4 Universities Data Set. Python 文本挖掘:使用scikit-learn 机器学习包进行文本分类 - rzcoding的日志 - 网易博客. LeetCode OJ. Search engine - Talentbuddy. Programming Basics Course - Programming Fundamentals - Udemy. KJlmfe/-Head-First-JavaScript- Trading Website Community Project - 1 - Introduction. Emcat-mlj99.pdf. Question database structure. Installation — PEER 0.11.0 documentation. Python升级导致yum命令无法使用的解决办法(修改版) - EI__Nino的专栏. [Tutorial] Deploy Apache + MySQL + Python on AWS EC2 « 無良心筆記. Using Adminer to Manage your Databases - LinuxCareer's Documentation.

Install / update to Python 2.7 and latest Pip on EC2 Amazon Linux. Html - Python Scrapy Dynamic Web Sites. Python data scraping with Scrapy. IndeedScraper/indeed/spiders at master · tweinzirl/IndeedScraper. 用scrapy框架爬取js交互式表格数据 - 蒋国宝的IT技术博客.