Coders at Work: Reflections on the Craft of Programming

By Peter Seibel

Peter Seibel interviews 15 of the main attention-grabbing desktop programmers alive this day in Coders at Work, supplying a significant other quantity to Apress’s hugely acclaimed best-seller Founders at Work via Jessica Livingston. because the phrases “at paintings” recommend, Peter Seibel specializes in how his interviewees take on the daily paintings of programming, whereas revealing even more, like how they grew to become nice programmers, how they realize programming expertise in others, and what different types of difficulties they locate so much interesting.

Hundreds of individuals have recommended names of programmers to interview at the Coders at Work website: the entire record used to be 284 names. Having digested everyone’s suggestions, we chosen 15 parents who’ve been style adequate to comply with be interviewed:

  • Frances Allen: Pioneer in optimizing compilers, first lady to win the Turing Award (2006) and primary girl IBM fellow
  • Joe Armstrong: Inventor of Erlang
  • Joshua Bloch: writer of the Java collections framework, now at Google
  • Bernie Cosell: one of many major software program men in the back of the unique ARPANET IMPs and a grasp debugger
  • Douglas Crockford: JSON founder, JavaScript architect at Yahoo!
  • L. Peter Deutsch: writer of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1
  • Brendan Eich: Inventor of JavaScript, CTO of the Mozilla company
  • Brad Fitzpatrick: author of LiveJournal, OpenID, memcached, and Perlbal
  • Dan Ingalls: Smalltalk implementor and clothier
  • Simon Peyton Jones: Coinventor of Haskell and lead dressmaker of Glasgow Haskell Compiler
  • Donald Knuth: writer of The artwork of laptop Programming and author of TeX
  • Peter Norvig: Director of study at Google and writer of the normal textual content on AI
  • Guy Steele: Coinventor of Scheme and a part of the typical Lisp Gang of 5, presently engaged on fort
  • Ken Thompson: Inventor of UNIX
  • Jamie Zawinski: writer of XEmacs and early Netscape/Mozilla hacker

Show description

Learning Neo4j

By Rik Van Bruggen

Run blazingly quickly queries on complicated graph datasets with the ability of the Neo4j graph database

About This Book

  • Get accustomed to graph database structures and follow them in real-world use cases
  • Get all started with Neo4j, a special NOSQL database procedure that specializes in tackling info complexity
  • A functional advisor packed with pattern queries, set up techniques, and valuable tips that could different info sources

Who This e-book Is For

This e-book is for builders who wish another strategy to shop and approach info inside their purposes. No past graph database event is needed; even if, a few simple database wisdom may also help you realize the thoughts extra easily.

What you are going to Learn

  • Background and requirements of graph databases
  • Install Neo4j on numerous diversified systems, in the neighborhood and within the cloud
  • Model information for a graph database equivalent to Neo4j
  • Import facts into Neo4j
  • Learn approximately pattern use situations for Neo4j
  • Discover the benefits of graph databases as opposed to different database models
  • Find out the place you'll find more information on Neo4j

In Detail

Learning Neo4j provide you with a step by step method of adopting Neo4j, the world's best graph database. This e-book incorporates a lot of heritage details, is helping you clutch the elemental ideas at the back of this radical new method of facing attached facts, and may provide you with plenty of examples of use situations and environments the place a graph database will be an exceptional fit.

Starting with a quick advent to graph concept, this booklet will convey you some great benefits of utilizing graph databases. Following on from that, you'll be brought to Neo4j and you'll be proven the best way to set up Neo4j on quite a few working platforms. you'll then be proven how one can version and import your information into Neo4j.

This e-book has use case examples that would enable you version and enforce a graph in Neo4j via examining a consumer case, and examine the effect a transformation has on a approach or a approach. additionally, you will achieve an perception into graph visualization innovations for Neo4j and detect exterior resources the place you could research extra approximately Neo4j.

Show description

SQL Server 2012 Query Performance Tuning (Expert's Voice in SQL Server)

By Grant Fritchey

Queries no longer working quick adequate? uninterested in the telephone calls from pissed off clients? supply Fritchey’s publication SQL Server 2012 question functionality Tuning is the reply on your SQL Server question functionality difficulties. The publication is revised to hide the very most up-to-date in functionality optimization gains and strategies. it really is present with SQL Server 2012. It offers the instruments you want to strategy your queries with functionality in brain.

SQL Server 2012 question functionality Tuning leads you thru figuring out the motives of terrible functionality, tips on how to establish them, and the way to mend them. You’ll learn how to be proactive in constructing functionality baselines utilizing instruments like functionality display screen and prolonged occasions. You’ll discover ways to realize bottlenecks and defuse them sooner than the telephone jewelry. You’ll examine a few fast suggestions too, yet emphasis is on designing for functionality and getting it correct, and upon warding off hassle prior to it happens. pride your clients. Silence that ringing telephone. placed the rules and classes from SQL Server 2012 question functionality Tuning into perform today.

  • Establish functionality baselines and computer screen opposed to them
  • Troubleshoot and put off bottlenecks that frustrate clients
  • Plan forward to accomplish the best point of functionality

Show description

The Correctness-by-Construction Approach to Programming

The concentration of this ebook is on bridging the distance among severe equipment for constructing software program. at the one hand, there are texts and ways which are so formal that they scare off all however the so much committed theoretical desktop scientists. at the different, there are a few who think that any degree of ritual is a waste of time, leading to software program that's built by way of following intestine emotions and intuitions.

Kourie and Watson recommend an strategy often called “correctness-by-construction,” a strategy to derive algorithms that is dependent upon formal thought, yet that calls for such thought to be deployed in a truly systematic and pragmatic way.  First they supply the main theoretical history (like first-order predicate good judgment or refinement legislation) that's had to comprehend and observe the tactic. They then aspect a sequence of graded examples starting from binary seek to lattice disguise graph building and finite automata minimization in an effort to exhibit the way it may be utilized to more and more advanced algorithmic problems. 

The significant goal of this ebook is to alter the way in which software program builders strategy their activity at programming-in-the-small point, that allows you to enhancing code caliber. therefore it coheres with either the IEEE’s advisor to the software program Engineering physique of information (SWEBOK) innovations, which identifies topics lined during this ebook as a part of the software program engineer’s arsenal of instruments and strategies, and with the objectives of the software program Engineering procedure and idea (SEMAT) initiative, which goals to “refound software program engineering in response to an effective theory.”

Show description

The Functional Approach to Programming

By Guy Cousineau

A programming direction should still be aware of a program's logical constitution and layout instead of on easily writing code. The practical method of programming achieves this objective simply because logical innovations are obtrusive and courses are obvious, and so could be written quick and cleanly. during this e-book, the authors emphasize the notions of functionality and relate programming to regularly occurring thoughts from arithmetic and good judgment. They introduce practical programming through examples but in addition clarify what courses compute and the way to cause approximately them. They convey how the information might be applied within the Caml language, a dialect of the ML relations, and provides examples of the way complicated courses from a number of components (such as mathematics, tree algorithms, graph algorithms, textual content parsing and geometry) will be built in shut contract with their requisites. Many workouts and examples are integrated through the e-book; recommendations also are on hand. An appendix provides all of the code utilized in the publication in common ML.

Show description

Inside Windows Debugging: A Practical Guide to Debugging and Tracing Strategies in Windows

By Tarik Soulami

Use home windows debuggers in the course of the improvement cycle—and construct larger software

Rethink your use of home windows debugging and tracing tools—and how you can cause them to a key a part of test-driven software program improvement. Led by means of a member of the home windows basics group at Microsoft, you’ll observe specialist debugging and tracing techniques—and sharpen your C++ and C# code research skills—through functional examples and customary eventualities. study why skilled builders use debuggers in each step of the improvement strategy, and never simply while insects appear.

Discover how to:
* cross backstage to envision how robust home windows debuggers paintings
* capture insects early within the improvement cycle with static and runtime research instruments
* achieve functional concepts to take on the commonest code defects
* observe specialist tips to deal with user-mode and kernel-mode debugging projects
* enforce postmortem strategies reminiscent of JIT and sell off debugging
* Debug the concurrency and defense elements of your software program
* Use debuggers to research interactions among your code and the working method
* study software program habit with Xperf and the development Tracing for home windows (ETW) framework

Show description

Working Effectively with Legacy Code

Get extra from your legacy structures: extra functionality, performance, reliability, and manageability Is your code effortless to alter? are you able to get approximately instant suggestions if you do swap it? Do you realize it? If the reply to any of those questions isn't any, you have got legacy code, and it really is draining money and time clear of your improvement efforts. during this ebook, Michael Feathers deals start-to-finish suggestions for operating extra successfully with huge, untested legacy code bases. This e-book attracts on fabric Michael created for his well known item Mentor seminars: recommendations Michael has utilized in mentoring to assist 1000's of builders, technical managers, and testers deliver their legacy structures less than regulate. including gains, solving insects, bettering layout, optimizing functionality Getting legacy code right into a try harness Writing exams that shield you opposed to introducing new difficulties strategies that may be used with any language or platform--with examples in Java, C++, C, and C# thoroughly making a choice on the place code alterations have to be made dealing with legacy platforms that aren t object-oriented dealing with purposes that don t appear to have any structureThis booklet additionally contains a catalog of twenty-four dependency-breaking innovations that assist you paintings with application components in isolation and make more secure alterations. (c) Copyright Pearson schooling. All rights reserved.

Show description

iOS Game Development Cookbook: Simple Solutions for Game Development Problems (1st Edition)

By Paris Buttfield-Addison, Jonathon Manning

Are looking to construct video games with iOS applied sciences? This cookbook presents distinct recipes for a variety of universal iOS game-development matters, starting from 2nd and 3D math to video game middle integration, and OpenGL to functionality. If you’re acquainted with iOS and Objective-C, this can be the problem-solving advisor you want.

Rather than specialize in particular video game engines for iOS, similar to Cocos2D or the Corona SDK, the recipes during this cookbook strictly care for baked-in iOS applied sciences. You’ll study ideas for every little thing from tile-matching video games to racing, with operating code so you might use correct away.

* Lay out the constitution of your game
* construct and customise menus with UIKit
* become aware of and reply to consumer input
* Use complicated ideas to play sound results and music
* paintings with information, utilizing iOS units and the cloud
* Create second photos with SpriteKit
* upload physics simulation on your game
* research commencing to complex 3D graphics
* Create demanding situations with synthetic intelligence
* Use networking so as to add multiplayer capabilities
* paintings with online game controllers and a number of screens

Show description

Masterminds of Programming: Conversations with the Creators of Major Programming Languages

By Shane Warden, Federico Biancuzzi

Masterminds of Programming gains specific interviews with the creators of a number of historical and hugely influential programming languages. during this special assortment, you'll find out about the techniques that ended in particular layout judgements, together with the ambitions that they had in brain, the trade-offs that they had to make, and the way their stories have left an effect on programming this present day. Masterminds of Programming comprises person interviews with:

-Adin D. Falkoff: APL
-Thomas E. Kurtz: BASIC
-Charles H. Moore: FORTH
-Robin Milner: ML
-Donald D. Chamberlin: SQL
-Alfred Aho, Peter Weinberger, and Brian Kernighan: AWK
-Charles Geschke and John Warnock: PostScript
-Bjarne Stroustrup: C++
-Bertrand Meyer: Eiffel
-Brad Cox and Tom Love: Objective-C
-Larry Wall: Perl
-Simon Peyton Jones, Paul Hudak, Philip Wadler, and John Hughes: Haskell
-Guido van Rossum: Python
-Luiz Henrique de Figueiredo and Roberto Ierusalimschy: Lua
-James Gosling: Java
-Grady Booch, Ivar Jacobson, and James Rumbaugh: UML
-Anders Hejlsberg: Delphi inventor and lead developer of C#

If you're attracted to the folk whose imaginative and prescient and tough paintings contributed to shaping the pc undefined, you'll locate Masterminds of Programming attention-grabbing.

Show description

Eloquent Ruby (Addison-Wesley Professional Ruby)

By Russ Olsen

It’s effortless to put in writing right Ruby code, yet to realize the fluency had to write great Ruby code, you want to transcend syntax and take in the “Ruby approach” of pondering and challenge fixing. In Eloquent Ruby, Russ Olsen is helping you write Ruby like precise Rubyists do–so you could leverage its colossal, outstanding power.


Olsen attracts on years of expertise internalizing the Ruby tradition and educating Ruby to different programmers. He courses you to the “Ah Ha!” moments whilst it unexpectedly turns into transparent why Ruby works how it does, and the way you could benefit from this language’s attractiveness and expressiveness.


Eloquent Ruby

starts off small, answering tactical questions excited by a unmarried assertion, approach, attempt, or computer virus. You’ll how you can write code that truly feels like Ruby (not Java or C#); why Ruby has such a lot of keep watch over buildings; find out how to use strings, expressions, and emblems; and what dynamic typing is de facto solid for.


Next, the ebook addresses larger questions with regards to construction equipment and sessions. You’ll become aware of why Ruby sessions comprise such a lot of tiny tools, whilst to exploit operator overloading, and whilst to prevent it. Olsen explains easy methods to write Ruby code that writes its personal code–and why you’ll are looking to. He concludes with robust project-level positive factors and methods starting from gemstones to area particular Languages.


A a part of the well known Addison-Wesley specialist Ruby sequence, Eloquent Ruby might help you “put in your Ruby-colored glasses” and get effects that make you a real believer.

Show description