Software Secret Weapons™


 
Great Software Engineering Writings, Speeches And Presentations
by Pavel Simakov on 2007-04-25 23:10:47 under Great People, Smoke & Mirrors, Spam & Bots, view comments
Bookmark and Share
 


>> The Most Recent Addition

Atomic Commit In SQLite. http://www.sqlite.org.
 
An important feature of transactional databases like SQLite is "atomic commit". With atomic commit, it is as if many different writes to different sections of the database file occur instantaneously and simultaneously. Real hardware serializes writes to mass storage, and writing a single sector takes a finite amount of time. This article describes the techniques used by SQLite to create the illusion of atomic commit.
2009 original


>> The Entire Collection

Atomic Commit In SQLite. http://www.sqlite.org.
 
An important feature of transactional databases like SQLite is "atomic commit". With atomic commit, it is as if many different writes to different sections of the database file occur instantaneously and simultaneously. Real hardware serializes writes to mass storage, and writing a single sector takes a finite amount of time. This article describes the techniques used by SQLite to create the illusion of atomic commit.
2009 original
The First Few Milliseconds of an HTTPS Connection. Jeff Moser.
 
What happens when one clicks on "Proceed to Checkout" on a website after browsing through their offerings? This is an analysis of the first milliseconds when an HTTPS connection with Amazon is established.
2009 original
Thrift: Scalable Cross-Language Services Implementation. Mark Slee, Aditya Agarwal and Marc Kwiatkowski.
 
Thrift is a software library and set of code-generation tools developed at Facebook to expedite development and implementation of efficient and scalable backend services.
2007 original
Attacking AJAX Web Applications. Alex Stamos and Zane Lackey.
 
Great presentation covering lots of ground of AJAX security. The final conclusions are: none of the frameworks advertise much about security, to protect against … attacks you need to understand traffic, do not rely on other people’s code.
2006 original
XRumer. http://www.botmaster.net.
 
This movie is a demo of the Internet traffic generator. It will be a shocking revelation to those of you who don't realize that human-to-human competition of the past is changing to human-machine-machine-human competition! XRumer, shown in this movie, is a software application that automatically posts your messages to forums, guestbooks, bulletin boards and catalogs of the links (as well as into livejournals and wiki). In a word it is an autosubmitter.
2006 original-cached
Towards A Periodic Table of Visualization Methods for Management. Ralph Lengler & Martin J. Eppler.
 
A visualization method is a systematic, rule-based, external, permanent, and graphic representation that depicts information in a way that is conducive to acquiring insights, developing an elaborate understanding, or communicating experiences.
2006 original-cached
The eBay Architecture. Randy Shoup, Dan Pritchett.
 
Striking a balance between site stability, feature velocity, performance, and cost: 26 Billion SQL statements a day so far on eBay!
2006 cached
Google Maps API Tutorial. Mike Williams.
 
This great tutorial is intended to help you create your own interactive maps using the Google API.
2006 original
Hierarchical Temporal Memory. Jeff Hawkinsm, Dileep George (Numenta Inc.).
 
Numenta is building a new type of memory system, called Hierarchical Temporal Memory (HTM), modeled on Jeff Hawkins' theory of how the human neocortex works. The theory behind HTM systems is described in a book called On Intelligence written by Numenta co-founder Jeff Hawkins.
2006 original
The nature of Lisp. CoffeeMug.
 
An excellent introduction to Lisp that draws a parallel between the meaning of s-expressions and the nodes in the XML tree. This is one of the most direct and non-very-complicated guides for non-Lisp programmers to peek into the functional programming world.
2006 original
Bayesian Filtering: Beyond Binary Classification. Ben Kamens (Fog Creek Software).
 
The overview of the Bayesian classifier used by the FogBugz and the forum software that powers Joel Spolsky’s web site http://www.joelonsoftware.com.
200? original
Flow with Continuations. Geert Bevin (CTO, Uwyn), TSSSS. 2006 original-cached
Computing Versus Human Thinking. Peter Naur, recipient of ACM's 2005 A.M. Turing Award.
 
As a major result of these studies Peter Naur describes programming as a human activity: theory building . By this description the core of programming is the programmer's developing a certain kind of understanding of the matters of concern.
2005  
Dynamic Object Model. Dirk Riehle, Michel Tilman, Ralph Johnson.
 
Allow a system to have new and changing object types without having to reprogram the system. By representing the object types as objects, they can be changed at configuration time or at runtime, making it easy to change and adapt the system to new requirements.
2005 original-cached
Interview with Max Levchin. Max Levchin (Co-founder of PayPal).
 
The interview with Max Levchin will touch many of the software engineers that love programming for the mental thrill of it. If you have to constantly explain your girlfriend why you are up all night writing some code - show her this interview. Among many interesting thoughts expressed, Max advocates solving "valuable", not just "complex" engineering problems.
2005 original
Under the Hood of J2EE Clustering. Wang Yu.
 
Clustering is different from the stand-alone environment. J2EE vendors implement clustering differently. You should prepare for J2EE clustering at the beginning of your projects in order to build a large scale system. Choose proper J2EE product which is well suitable to your requirements. Choose proper third-party software and frameworks to make sure they are cluster-aware too. Then, design proper architectures which will really benefit from clustering instead of suffering.
2005 original
How do slot machines and other electronic gambling machines actually work?. Nigel Turner & Roger Horbay.
 
Slot machines and other electronic gambling machines (EGMs) are gambling devices that offer a variety of games. They are inexpensive to run, which makes it possible for casinos to offer low-stakes betting to a large number of customers. ... Our goal is to demystify the machines in order to demystify the games.
2004 original
How to Design a Good API and Why it Matters. Joshua Bloch (Principal Software Engineer, Google), Java One Conference.
 
API design is a noble and rewarding craft. It improves the lot of programmers, end-users, companies. This talk covered some heuristics of the craft, don't adhere to them slavishly, but don't violate them without good reason: API design is tough, not a solitary activity, perfection is unachievable, but try anyway.
2004 original-cached
Inside LiveJournal's Backend || "holy hell that's a lot of hits!". Brad Fitzpatrick (Danga Interactive). MySQL User's Conference 2004, 2005. 2004
2005
original-original
LiveJournal Server Manual.
 
LiveJournal.com, a website and online community built around personal journals, was created by Brad Fitzpatrick in March of 1999 for himself and some of his friends. Friends told friends and it became a huge success, soon growing bigger than a single person could easily handle. As a result, a team of volunteers working with LiveJournal's creator have transformed LiveJournal into a Webby Award winning site used by over one million people worldwide. The site is now an open-source software development project funded entirely by its members, assisted by numerous volunteers and developers, and overseen by a small paid staff. It's been expanded to allow easy creation of journals, weblogs, and even interest-based online communities.
live original
LiveJournal memcached.
 
Danga Interactive developed memcached to enhance the speed of LiveJournal.com, a site which was already doing 20 million+ dynamic page views per day for 1 million users with a bunch of webservers and a bunch of database servers. memcached dropped the database load to almost nothing, yielding faster page load times for users, better resource utilization, and faster access to the databases on a memcache miss.
live original
Amazon.com Recommendations. Item-to-Item Collaborative Filtering. Greg Linden, Brent Smith, and Jeremy York.
 
Amazon's recommendation algorithms provide an effective form of targeted marketing by creating a personalized shopping experience for each customer. A good recommendation algorithm is scalable over very large customer bases and product catalogs, requires only subsecond processing time to generate online recommendations, is able to react immediately to changes in a user’s data, and makes compelling recommendations for all users regardless of the number of purchases and ratings. Unlike other algorithms, Amazon's item-to-item collaborative filtering is able to meet this challenge.
2003 original-cached
eBay Creates Technology Architecture for the Future. David S. Marshak, Patricia Seybold Group.
 
eBay evaluated two architectural platforms: Microsoft's .NET initiative and the industry-standard Java 2 Platform, Enterprise Edition (J2EE) platform. According to Chuck Geiger, Vice President of Architecture and Technology Strategy at eBay, eBay decided that Java had finally matured with J2EE to the point to which large-scale velocity could be considered. (Sun played a key role in assuring eBay, including demonstrations of successful deployments of J2EE technology-based platforms for high-volume destinations such as J.Crew, Ford Credit, and Charles Schwab.) eBay then turned to Sun Services to help with its J2EE technology-based architecture design and implementation.
2003 original-cached
RAIDb: Redundant Array of Inexpensive Databases. Emmanuel Cecchet, Julie Marguerite, Willy Zwaenepoel.
 
In this paper, authors address database performance scalability and high availability using clusters of commodity hardware. Their approach consists of studying different replication and partitioning strategies to achieve various degree of performance and fault tolerance. Authors present a Java implementation of RAIDb called Clustered JDBC or C-JDBC. C-JDBC achieves both database performance scalability and high availability at the middleware level without changing existing applications.
2003 original
Does an Individual’s Myers-Briggs Type Indicator Preference Influence Task-Oriented Technology Use?. Pamela Ludford, Loren Terveen.
 
The Myers-Briggs Type Indicator (MBTI) measures individual personality preferences and is used to explain certain differences in human behavior. The MBTI dimensions suggest they could be a factor explaining why individuals take different approaches to using software applications. Authors find a person's MBTI type influences how they organize email and the informational features they rely on when using a decision support system.
2003 original
Beating the Averages. Paul Graham’s. 2001 original
UML Tutorial. Ian Graham. 2001 cached
Strategy As Simple Rules. Kathleen M. Eisenhardt, Donald N. Sull.
 
In this article the authors ask, what are the sources of competitive advantage in high-velocity markets? The secret, they say, is strategy as simple rules. Simple rules, which grow out of experience, fall into five broad categories: how- to rules, boundary conditions, priority rules, timing rules, and exit rules.
2001 cached
EGGG: The Extensible Graphical Game Generator. Jon Orwant.
 
This Thesis is that perfect practical example of applying feature modeling and DSL to create a variety of concrete consumer products – games. It tackles and solves many challenges in converting abstract concepts into consumer products starting purely with the feature model. It's an excellent tutorial for someone interested in applying feature models to building dynamically-configurable flexible software application.
2000 original
Architectural Styles and the Design of Network-based Software Architectures. Roy Fielding.
 
This dissertation defines a framework for understanding software architecture via architectural styles and demonstrates how styles can be used to guide the architectural design of network-based application software. A survey of architectural styles for network-based applications is used to classify styles according to the architectural properties they induce on an architecture for distributed hypermedia. Author then introduces the Representational State Transfer (REST) architectural style and describes how REST has been used to guide the design and development of the architecture for the modern Web (HTTP 1.0 and 1.1).
2000 original
Growing a Language. Guy L. Steele Jr. (Sun), OOPSLA Conference.
 
The best talk of all times at OOPSLA conference.
1998 original-cached
The Winners and Losers of the Zero-Sum Game: The Origins of Trading Profits, Price Efficiency and Market Liquidity. Lawrence Harris, University of South California. 1993 original-cached
Finding Structure in Time. Jeffrey L. Elman, University of California, San Diego.
 
Time underlies many interesting human behaviors. Thus, the question of how to represent time in connectionist models is very important.
1990 original

No comments yet


Leave a comment


 
Dog Emotional 2010 Calendar Dog Emotional Mousepad Dog Fashionable 2010 Calendar Dog Fashionable Mousepad

Copyright © 2004-2010 by Pavel Simakov
any conclusions, recommendations, ideas, thoughts or the source code presented on this site are my own and do not reflect a official opinion of my current or past employers, partners or clients
SourceForge.net Logo