Essential JavaScript Design Patterns For Beginners
6 days ago
I hope this book helps in part to improve your knowledge of design patterns and the usefulness of their application to JavaScript.
Before we get started, I would like to thank Rebecca Murphey for inspiring me to write the original version of this online book and more importantly, open-source it. I believe educational material should be freely available for anyone to use, access and improve where possible and hope that efforts such as this inspire other authors. I would also like to extend my thanks to the always intelligent Alex Sexton who was kind enough to be the technical reviewer for the first edition of this publication.
Since this book was put online, several other members of the community have been kind enough to help me with minor corrections and I would like to give them my thanks too.
javascript
designpatterns
Before we get started, I would like to thank Rebecca Murphey for inspiring me to write the original version of this online book and more importantly, open-source it. I believe educational material should be freely available for anyone to use, access and improve where possible and hope that efforts such as this inspire other authors. I would also like to extend my thanks to the always intelligent Alex Sexton who was kind enough to be the technical reviewer for the first edition of this publication.
Since this book was put online, several other members of the community have been kind enough to help me with minor corrections and I would like to give them my thanks too.
6 days ago
Simple JavaScript Inheritance
13 days ago
I've been doing a lot of work, lately, with JavaScript inheritance - namely for my work-in-progress JavaScript book - and in doing so have examined a number of different JavaScript classical-inheritance-simulating techniques. Out of all the ones that I've looked at I think my favorites were the implementations employed by base2 and Prototype.
I wanted to go about extracting the soul of these techniques into a simple, re-usable, form that could be easily understood and didn't have any dependencies. Additionally I wanted the result to be simple and highly usable. Here's an example of what you can do with it:
javascript
I wanted to go about extracting the soul of these techniques into a simple, re-usable, form that could be easily understood and didn't have any dependencies. Additionally I wanted the result to be simple and highly usable. Here's an example of what you can do with it:
13 days ago
A re-introduction to JavaScript
14 days ago
Why a re-introduction? Because JavaScript has a reasonable claim to being the world's most misunderstood programming language. While often derided as a toy, beneath its deceptive simplicity lie some powerful language features. 2005 has seen the launch of a number of high-profile JavaScript applications, showing that deeper knowledge of this technology is an important skill for any web developer.
It's useful to start with an idea of the language's history. JavaScript was created in 1995 by Brendan Eich, an engineer at Netscape, and first released with Netscape 2 early in 1996. It was originally going to be called LiveScript, but was renamed in an ill-fated marketing decision to try to capitalize on the popularity of Sun Microsystem's Java language — despite the two having very little in common. This has been a source of confusion ever since.
javascript
It's useful to start with an idea of the language's history. JavaScript was created in 1995 by Brendan Eich, an engineer at Netscape, and first released with Netscape 2 early in 1996. It was originally going to be called LiveScript, but was renamed in an ill-fated marketing decision to try to capitalize on the popularity of Sun Microsystem's Java language — despite the two having very little in common. This has been a source of confusion ever since.
14 days ago
Javascript Game Development - Keyboard Input
20 days ago
Now that we have our basic game loop layed out, we can focus on implementing other aspects of our javascript based game. What I want to show in this post is how you process keyboard input.
javascript
20 days ago
Javascript Game Development - The Game Loop
20 days ago
One of the most important parts of a game engine is the so called “game loop”. It is the central piece of the game’s engine and is responsible for trying to balance running a game’s logic, and executing its drawing operations.
javascript
20 days ago
Space Invaders Specification
22 days ago
From the information I was able to find it appears the original Space Invaders ran at a resolution of 224x260 pixels. This is quite small in a web browser of todays standards so I will double it to 448x520 pixels.
spaceinvaders
22 days ago
Sittard gevonden bij Film in Nederland
23 days ago
De documentaire toont de belangrijkste gebouwen, monumenten, straten, pleinen en waterwegen van Sittard. In het oog springen de vele kerken en andere katholieke bouwwerken. Ook de Sint-Rosakapel komt in beeld. Deze kapel geniet bekendheid als bedevaartsoord, maar ook als ontmoetingsplaats van de 'bokkerijders', een beruchte roversbende die Zuid-Limburg onveilig maakte in de laat-achttiende en begin-negentiende eeuw.
sittard
videos
23 days ago
Mega-man: The fast, fabulous, fraudulent life of Megaupload's Kim Dotcom
26 days ago
Since the shutdown of Megaupload, stories have erupted about the life and exploits of the company's founder, a self-styled "Dr. Evil" of file sharing. Kim Dotcom's opulent digs, high-end cars, fondness for models and other Bond-villain-esque behaviors have been splashed across websites and have confused evening newscasts for the last week.
The man once known as Kim Schmitz (and as Kimble, and as Kim Tim Jim Vestor, and finally as Kim Dotcom), now awaiting extradition from New Zealand to face charges of conspiracy, money laundering and copyright crimes in the US, has enveloped his actual life in a cloud of hype and bluster that echo the worst of the dot-com bubble from which he took his new surname. In 2001, the Telegraph called Schmitz "a PR man's nightmare and a journalist's dream."
from instapaper
The man once known as Kim Schmitz (and as Kimble, and as Kim Tim Jim Vestor, and finally as Kim Dotcom), now awaiting extradition from New Zealand to face charges of conspiracy, money laundering and copyright crimes in the US, has enveloped his actual life in a cloud of hype and bluster that echo the worst of the dot-com bubble from which he took his new surname. In 2001, the Telegraph called Schmitz "a PR man's nightmare and a journalist's dream."
26 days ago
Defend our freedom to share (or why SOPA is a bad idea)
4 weeks ago
What does a bill like PIPA/SOPA mean to our shareable world? At the TED offices, Clay Shirky delivers a proper manifesto -- a call to defend our freedom to create, discuss, link and share, rather than passively consume.
from instapaper
4 weeks ago
Wat
4 weeks ago
The sarcasm in this talk does not represent anyone's actual opinion. For a more serious take on software, try Destroy All Software Screencasts: 10 to 15 minutes weekly, dense with information on advanced topics like Unix, TDD, OO Design, Vim, Ruby, and Git.
from instapaper
4 weeks ago
Reflections on Scrum and Kanban
4 weeks ago
Done and done! 1,5 years of hard work at National Land Survey is over. What a great project! This post will be on my personal findings about Scrum team transition to Kanban. What worked and what not? Moreover, I will try to analyze the failures we made and to come up with some solutions. Let’s get started!
from instapaper
4 weeks ago
The Hacker's Diet
5 weeks ago
The Hacker's Diet, notwithstanding its silly subtitle, is a serious book about how to lose weight and permanently maintain whatever weight you desire. It treats dieting and weight control from an engineering and management standpoint, and provides the tools and an understanding of why they work and how to use them that permit the reader to gain control of their own weight. The book is intended primarily for busy, successful engineers, programmers, and managers who have struggled unsuccessfully in the past to lose weight and avoid re-gaining it. Computer-based tools and experiments in Microsoft Excel or the Palm Computing Platform are available, as well as an online Web application, but a computer is not necessary to use the techniques described in the book; paper and pencil alternatives are provided.
health
nutrition
5 weeks ago
Double Brace Initialization
6 weeks ago
Java doesn't have a convenient literal syntax for collections (lists, maps, sets, etc.). This makes creating constant collections or passing collections to functions quite laborious. Every time you have to
1. Declare a variable for a temporary collection
2. Create a new empty collection and store a reference to it in the variable
3. Put things into the collection
4. Pass the collection to the method
java
1. Declare a variable for a temporary collection
2. Create a new empty collection and store a reference to it in the variable
3. Put things into the collection
4. Pass the collection to the method
6 weeks ago
How (not) to communicate new scientific information: a memoir of the famous brindley lecture
6 weeks ago
In 1983, at the Urodynamics Society meeting in Las Vegas, Professor G.S. Brindley first announced to the world his experiments on self-injection with papaverine to induce a penile erection. This was the first time that an effective medical therapy for erectile dysfunction (ED) was described, and was a historic development in the management of ED. The way in which this information was first reported was completely unique and memorable, and provides an interesting context for the development of therapies for ED. I was present at this extraordinary lecture, and the details are worth sharing. Although this lecture was given more than 20 years ago, the details have remained fresh in my mind, for reasons which will become obvious.
from instapaper
6 weeks ago
Anthrax Redux: Did the Feds Nab the Wrong Guy?
6 weeks ago
Finally, the investigation was over. The riddle solved. On August 18, 2008—after almost seven years, nearly 10,000 interviews, and millions of dollars spent developing a whole new form of microbial forensics—some of the FBI’s top brass filed into a dimly lit, flag-lined room in the bureau’s Washington, DC, headquarters. They were there to lay out the evidence proving who was responsible for the anthrax attacks that had terrified the nation in the fall of 2001.
from instapaper
6 weeks ago
How France’s Free will reinvent mobile
6 weeks ago
Xavier Niel, the maverick founder of Iliad, the company behind Free.fr broadband service is about to redefine the mobile landscape, perhaps as early as tomorrow when he launches the much-talked about Free Mobile. In doing so, he will redefine what is the idea of a carrier in the 21st century thanks to a radical new approach. Utilizing a blend of Wifi, HSPA+ 3G, Femto cells and its all-fiber backbone, Free will offer unlimited voice, texting and data over the mobile networks. Just bring your own iPhone. But before I get into the details of his new company, let me back up and tell you about Iliad and Free.fr.
from instapaper
6 weeks ago
Duck Programming
6 weeks ago
Prior to joining Unspace Interactive, one of our developers worked on an “interesting” project, a project that taught him many lessons. One of those lessons was to beware of “duck programming.” Before we explain that term, let’s have a look at the project and get a feel for what the designers were trying to accomplish.
from instapaper
6 weeks ago
Aandeelhouder 2.0
6 weeks ago
Ik heb steeds meer moeite met de rol van de aandeelhouder. Als financieel eigenaar van een organisatie staan zijn belangen boven alles. Op menig strategie-slide komt als eerste punt het creëren van aandeelhouderswaarde terug. Dat lijkt logisch, ware het niet dat door de hebzucht die mensen eigen is, de korte termijn vaak prevaleert boven de lange termijn. Daar loopt het systeem nu helemaal op vast.
from instapaper
6 weeks ago
What Happens To Old And Expired Supermarket Foods
6 weeks ago
As darkness falls, your local supermarket becomes a hive of activity. From canned vegetables and salad dressings to fresh vegetables and deli meats, countless items are removed from shelves by night staff. Approaching their expiration dates or because they are no longer at their peak quality, most stores consider them unfit for sale. With 15,000 different products in an average supermarket and 25,000 in a superstore according to the Food Marketing Institute (FMI), retailers in the US are lumbered with endless pounds of past-their-prime items every year.
from instapaper
6 weeks ago
If PHP Were British
6 weeks ago
When Rasmus Lerdorf first put PHP together, he - quite sensibly, despite his heritage - chose not to write it in Greenlandic or Danish. Good job too - that would have been rather unpleasant to work with. He opted instead, being in Canada at the time, for the local tongue. No, not French - that bastard dialect of the Queen's English commonly referred to as "US English"1.
PHP developers in Britain have been grumpy about this ever since. What was he thinking? And more importantly, how do we undo this travesty? How do we developers ensure the traditions of the British Empire continue to be upheld, even in the digital age?
from instapaper
PHP developers in Britain have been grumpy about this ever since. What was he thinking? And more importantly, how do we undo this travesty? How do we developers ensure the traditions of the British Empire continue to be upheld, even in the digital age?
6 weeks ago
The Life-Changing $20 Rightward-Facing Cow
6 weeks ago
The past year has been one of the strangest ever in the life of game designer, lecturer and author Ian Bogost. It started with the launch of the most successful game he's ever developed, and ended with him bringing it to a strange, cathartic end.
That game was Facebook title Cow Clicker, a now-infamous satire against social games. For its creator, though, it's been more complicated than that. As his friend, I confess to being a little relieved it's over with.
from instapaper
That game was Facebook title Cow Clicker, a now-infamous satire against social games. For its creator, though, it's been more complicated than that. As his friend, I confess to being a little relieved it's over with.
6 weeks ago
Why do we pay sales commissions?
6 weeks ago
Among our many cherished verities and assumed assumptions is the widespread belief—nearly universal practice actually—that salespeople are to be paid commissions. It’s the way things are done. Stop signs are red. Salespeople get commissions.
But why?
from instapaper
But why?
6 weeks ago
Anonymous 101: Introduction to the Lulz
6 weeks ago
Last week the net and the media were ablaze with the news that Anonymous might be taking on the Zeta drug cartel in Mexico, a story that has morphed into a wider drug corruption story, and led to one American law enforcement official in North Carolina being named as a gang conspirator.
Also this year, Anons released documents on, or d0xed, several police organizations and one prominent police vendor in retaliation for heavy-handed law enforcement reaction to occupations associated with the Occupy Wall Street movement. They’ve fought with child pornographers, hacked Sony repeatedly, and even tried to release compromising pictures to blackmail Bay Area Rapid Transit spokesman Linton Johnson into resigning. (Johnson claimed to have authored and then defended BART’s controversial decision to shut off mobile phone service in BART stations to pre-empt an anti-police brutality protest.)
They’ve created law enforcement excitement that’s verged on panic, given net and media pundits hyperbolic logorrhea about “cyber terrorism” and “cyber freedom”, and happily skipped between damn funny, deeply disturbing, and self-aggrandizing, depending on the mood of the hive mind at the moment.
But what is Anonymous?
from instapaper
Also this year, Anons released documents on, or d0xed, several police organizations and one prominent police vendor in retaliation for heavy-handed law enforcement reaction to occupations associated with the Occupy Wall Street movement. They’ve fought with child pornographers, hacked Sony repeatedly, and even tried to release compromising pictures to blackmail Bay Area Rapid Transit spokesman Linton Johnson into resigning. (Johnson claimed to have authored and then defended BART’s controversial decision to shut off mobile phone service in BART stations to pre-empt an anti-police brutality protest.)
They’ve created law enforcement excitement that’s verged on panic, given net and media pundits hyperbolic logorrhea about “cyber terrorism” and “cyber freedom”, and happily skipped between damn funny, deeply disturbing, and self-aggrandizing, depending on the mood of the hive mind at the moment.
But what is Anonymous?
6 weeks ago
Scrum and Fixed Price Contracts
6 weeks ago
Fixed Priced contracts don’t make a great deal of sense in a Scrum world. This is really because traditional software development and Agile software development are two different paradigms … and solutions that work in one paradigm often doesn’t make sense in another.
from instapaper
6 weeks ago
Internet Access Is Not a Human Right
6 weeks ago
FROM the streets of Tunis to Tahrir Square and beyond, protests around the world last year were built on the Internet and the many devices that interact with it. Though the demonstrations thrived because thousands of people turned out to participate, they could never have happened as they did without the ability that the Internet offers to communicate, organize and publicize everywhere, instantaneously.
It is no surprise, then, that the protests have raised questions about whether Internet access is or should be a civil or human right. The issue is particularly acute in countries whose governments clamped down on Internet access in an attempt to quell the protesters. In June, citing the uprisings in the Middle East and North Africa, a report by the United Nations’ special rapporteur went so far as to declare that the Internet had “become an indispensable tool for realizing a range of human rights.” Over the past few years, courts and parliaments in countries like France and Estonia have pronounced Internet access a human right.
from instapaper
It is no surprise, then, that the protests have raised questions about whether Internet access is or should be a civil or human right. The issue is particularly acute in countries whose governments clamped down on Internet access in an attempt to quell the protesters. In June, citing the uprisings in the Middle East and North Africa, a report by the United Nations’ special rapporteur went so far as to declare that the Internet had “become an indispensable tool for realizing a range of human rights.” Over the past few years, courts and parliaments in countries like France and Estonia have pronounced Internet access a human right.
6 weeks ago
Spotify's Daniel Ek: The Most Important Man In Music
6 weeks ago
Spotify’s Daniel Ek created a free, Facebook-enabled platform that could save the recording industry from piracy–and iTunes.
from instapaper
6 weeks ago
The Dumbest Idea In The World: Maximizing Shareholder Value
6 weeks ago
“Imagine an NFL coach,” writes Roger Martin, Dean of the Rotman School of Management at the University of Toronto, in his important new book, Fixing the Game, “holding a press conference on Wednesday to announce that he predicts a win by 9 points on Sunday, and that bettors should recognize that the current spread of 6 points is too low. Or picture the team’s quarterback standing up in the postgame press conference and apologizing for having only won by 3 points when the final betting spread was 9 points in his team’s favor. While it’s laughable to imagine coaches or quarterbacks doing so, CEOs are expected to do both of these things.”
Imagine also, to extrapolate Martin’s analogy, that the coach and his top assistants were hugely compensated, not on whether they won games, but rather by whether they covered the point spread. If they beat the point spread, they would receive massive bonuses. But if they missed covering the point spread a couple of times, the salary cap of the team could be cut and key players would have to be released, regardless of whether the team won or lost its games.
from instapaper
Imagine also, to extrapolate Martin’s analogy, that the coach and his top assistants were hugely compensated, not on whether they won games, but rather by whether they covered the point spread. If they beat the point spread, they would receive massive bonuses. But if they missed covering the point spread a couple of times, the salary cap of the team could be cut and key players would have to be released, regardless of whether the team won or lost its games.
6 weeks ago
Kanban is the New Scrum
7 weeks ago
Maybe it’s all the time I spend with startups, but while I strongly value Scrum’s ideas behind self-organizing teams & continual feedback – I can’t help but feel Kanban represents the next level of agility, giving us more flexibility and capitalizing on the lessons we’ve learned from Lean.
from instapaper
7 weeks ago
Fearmongering Gets Started in 2012: Laacher See is Not “Ready to Blow”
7 weeks ago
A quick post today about a tremendously terrible “article” in the Daily Mail this morning. The headline reads “Is a super-volcano just 390 miles from London ready to blow?” It is, of course, referring to the Laacher See in western Germany – a caldera volcano that had a large eruption 12,900 years ago that covered a significant area of Europe with ash and tephra. Surely impressive considering how few people know about the caldera volcanism in central Europe.
from instapaper
7 weeks ago
Why Software Projects are Terrible and How Not To Fix Them
7 weeks ago
If you are a good developer and you’ve worked in bad organizations, you often have ideas to improve the process. The famous Joel Test is a collection of 12 such ideas. Some of these ideas have universal acceptance within the software industry (say, using source control), while others might be slightly more controversial (TDD). But for any particular methodology, whether it is universally accepted or only “mostly” accepted, there are a multitude of organizations which don’t employ them. There are many, many shops that do big bang testing, that do Big Design Up Front, that use e-mail for source control, and much worse. What’s going on here? Shouldn’t those companies be out of business?
from instapaper
7 weeks ago
Backbone vs Knockout
7 weeks ago
There’s an unfortunate dichotomy of “Backbone vs Knockout” floating around these days. It’s mostly in the .NET space where Knockout tends to get the most attention but I’ve heard others mention this, too. It’s an unfortunate argument, though. Both libraries are great, both are very powerful and both solve different problems in the front-end development space. The major difference between the two is the focus of each.
from instapaper
7 weeks ago
The Town that Blew Away
7 weeks ago
Just past midnight on April 28, the tiny community of Vaughn was going to sleep. Forty-five seconds later, it was no longer there.
from instapaper
7 weeks ago
Kanban Isn’t the Answer to Bad Product Ownership
7 weeks ago
The Scrum Product Owner has a tough job. Translating business strategy into product strategy and ultimately into teeny-tiny user stories takes a ton of time and effort. Most Product Managers don’t have the time or inclination to be a good Product Owner and most Business Analysts, the people most likely to fill the gap, don’t actually own the product. I almost always recommend to my clients that a team of people work together to fill this role. I don’t really care about the whole ‘single wringable neck’ thing… all I want is well groomed prioritized product backlog, and I think there is more than one way we can get there.
Here is the deal… when teams can’t get well groomed product backlog, it is almost impossible to do Scrum. Teams spend too much time figuring out what to build during sprint planning and not enough time figuring out how to build it. Because teams don’t know how to build the stories, they never really consider if the stories were estimable, nor really discuss how they could swarm to get the stories done earlier in the sprint. This will often result in teams of people that don’t work as teams, daily standup meetings that suck, and missed commitment after missed commitment. Not fun.
from instapaper
Here is the deal… when teams can’t get well groomed product backlog, it is almost impossible to do Scrum. Teams spend too much time figuring out what to build during sprint planning and not enough time figuring out how to build it. Because teams don’t know how to build the stories, they never really consider if the stories were estimable, nor really discuss how they could swarm to get the stories done earlier in the sprint. This will often result in teams of people that don’t work as teams, daily standup meetings that suck, and missed commitment after missed commitment. Not fun.
7 weeks ago
Agile Vs. Lean: Yeah Yeah, What’s the Difference?
7 weeks ago
Is Agile the same as Lean? When people say “agile” do they really mean Scrum? Or do people still use different types of agile – and if so, why?
Been getting a lot of questions lately, so thought I’d take a stab at this…
from instapaper
Been getting a lot of questions lately, so thought I’d take a stab at this…
7 weeks ago
Apple Wireless Keyboard
7 weeks ago
Helper that Allows people use the Apple Wireless Keyboard under Windows 7 without loosing the mac functionality.
windows
apple
keyboards
7 weeks ago
Smoke Screening
8 weeks ago
As you stand in endless lines this holiday season, here’s a comforting thought: all those security measures accomplish nothing, at enormous cost. That’s the conclusion of Charles C. Mann, who put the T.S.A. to the test with the help of one of America’s top security experts.
from instapaper
8 weeks ago
De kracht van transparantie
8 weeks ago
De controverse tussen Johan Cruijff en de rest van de Raad van Commissarissen bij Ajax is natuurlijk te bedroevend voor woorden. Met name de persoonlijke schade die mensen hierdoor op lopen is niet goed te praten. Het positieve eraan is wel dat het inzicht geeft in hoe bepaalde bestuurders denken en handelen. Door het vergrootglas wat de media erop legt, krijgen wij hier meer van te zien dan normaliter het geval is. Want vergis je niet, dit is normaal gedrag in de bestuurskamers.
from instapaper
8 weeks ago
Lego Is for Girls
9 weeks ago
Focusing on boys saved the toymaker in 2005. Now the company is launching Lego Friends for “the other 50 percent of the world’s children.” Will girls buy in?
from instapaper
9 weeks ago
Review of George Orwell's Nineteen Eighty Four
9 weeks ago
James Joyce, in the person of Stephen Dedalus, made a now famous distinction between static and kinetic art. Great art is static in its effects; it exists in itself, it demands nothing beyond itself. Kinetic art exists in order to demand; not self-contained, it requires either loathing or desire to achieve its function. The quarrel about the fourth book of ''Gulliver's Travels'' that continues to bubble among scholars -- was Swift's loathing of men so great, so hot, so far beyond the bounds of all propriety and objectivity that in this book he may make us loathe them and indubitably makes us loathe his imagination? -- is really a quarrel founded on this distinction. It has always seemed to the present writer that the fourth book of ''Gulliver's Travels'' is a great work of static art; no less, it would seem to him that George Orwell's new novel, Nineteen Eighty-Four, is a great work of kinetic art. This may mean that its greatness is only immediate, its power for us alone, now, in this generation, this decade, this year, that it is doomed to be the pawn of time. Nevertheless it is probable that no other work of this generation has made us desire freedom more earnestly or loathe tyranny with such fullness.
from instapaper
9 weeks ago
I Was Kim Jong Il's Cook
9 weeks ago
The author, who writes under a pseudonym, is a Japanese sushi chef. In 1982, at the invitation of a Japanese-North Korean trading company, he started working in a sushi restaurant in Pyongyang. In 1988 he agreed to serve as Kim Jong Il's personal chef—a job he held until 2001. In April of that year, having realized the extent of the paranoid and oppressive surveillance he was under, he escaped to Japan. In 2003, in Japanese, he published Kim Jong Il's Chef (Fuso Publishing, Inc.), from which these excerpts are drawn.
from instapaper
9 weeks ago
Friending the New York Scene
9 weeks ago
Since moving to Manhattan three years ago, Sean Parker, a founder of Napster and former president of Facebook, has considerably enlivened New York’s social scene.
from instapaper
9 weeks ago
Agile people still don't get it
9 weeks ago
I just attended Test-Driven Development presentation which represents everything that is wrong about the way Agile advocates are trying to evangelize their practices. I don’t have anything against the presenter in particular, but it’s really time for Agilists to rethink the way they communicate with the real world.
from instapaper
9 weeks ago
Google Currents - Yet another contribution to the UI-fragmentation of Android
9 weeks ago
Google, here is the problem: If you cannot make the UI of your apps consistent, how do you expect developers to follow your design language? Which one should they follow? You have to set the bar high. You have to show what a good app is supposed to be like. Developers will follow and the culture will be created. E.g. Apple set the bar for realistic textured apps. Developers followed.
from instapaper
9 weeks ago
Meanwhile… on the command side of my architecture
9 weeks ago
Since writing applications in .NET, I've been separating operations that mutate state (of the database mostly) and operations that return data. Basically, this is what the Command-query separation principle is all about. Over the years the design I used has evolved. Triggered by a former colleague of mine, I started to use the Command Pattern about four years back as the design around state mutations in my business layer. We called them business commands, since a single command would represents an atomic business operation, or single use case.
This model has worked well for the last couple of years, and in a sense, I'm still using it today. However the design was around command classes that contained both properties to hold the data and an Execute() method that would start that operation. The last few years however, the projects I participated in, increased in complexity and I started doing things like Test Driven Development and Dependency Injection (DI). I soon started to notice the flaws in this design (DI has this tendency of exposing violations of the SOLID principles) and that design hindered me in the maintainability of these applications.
from instapaper
This model has worked well for the last couple of years, and in a sense, I'm still using it today. However the design was around command classes that contained both properties to hold the data and an Execute() method that would start that operation. The last few years however, the projects I participated in, increased in complexity and I started doing things like Test Driven Development and Dependency Injection (DI). I soon started to notice the flaws in this design (DI has this tendency of exposing violations of the SOLID principles) and that design hindered me in the maintainability of these applications.
9 weeks ago
How to Disagree
9 weeks ago
The web is turning writing into a conversation. Twenty years ago, writers wrote and readers read. The web lets readers respond, and increasingly they do—in comment threads, on forums, and in their own blog posts.
Many who respond to something disagree with it. That's to be expected. Agreeing tends to motivate people less than disagreeing. And when you agree there's less to say. You could expand on something the author said, but he has probably already explored the most interesting implications. When you disagree you're entering territory he may not have explored.
from instapaper
Many who respond to something disagree with it. That's to be expected. Agreeing tends to motivate people less than disagreeing. And when you agree there's less to say. You could expand on something the author said, but he has probably already explored the most interesting implications. When you disagree you're entering territory he may not have explored.
9 weeks ago
This Tech Bubble is Different
9 weeks ago
Tech bubbles happen, but we usually gain from the innovation left behind. This one—driven by social networking—could leave us empty-handed.
from instapaper
9 weeks ago
Offbeat: Scala by the end of 2011 – No Drama but Frustration is Growing
10 weeks ago
I wanted to put our two cents when Yammers’ personal email was leaked week or so ago but kind of waited to let the dust settle. We are active Scala developers with several years and production code behind us – and so we have this rare “real live” experience with Scala…
In two years we went from having Scala as a very strategic choice to have it simply as an interesting (and mostly enjoyable) technology that we use to develop some (and rather small) parts of our platform. I still think, as I always did, that Scala is wonderfully elegant and relatively simple language. For the first time someone has combined OOP and FP in a extremely practical general purpose programming language.
But our team’s enthusiasm significantly decreased over the last 12 months as it became obviously clear that Scala won’t be the eventual Java replacement for most of the enterprise Java development. Moreover, more and more people are starting to painfully realize that Scala won’t even make any significant dent on Java eco-system at all – remaining forever in 1-2% territory for very specialized projects where FP focus or DSL capabilities override any other requirements. With Java 8 coming up quickly, with Kotlin, Ceylon and Clojure nibbling on the edges (even if some of them don’t yet exist!), Groovy going strong – Scala simply doesn’t have much room to grow or maneuver.
from instapaper
In two years we went from having Scala as a very strategic choice to have it simply as an interesting (and mostly enjoyable) technology that we use to develop some (and rather small) parts of our platform. I still think, as I always did, that Scala is wonderfully elegant and relatively simple language. For the first time someone has combined OOP and FP in a extremely practical general purpose programming language.
But our team’s enthusiasm significantly decreased over the last 12 months as it became obviously clear that Scala won’t be the eventual Java replacement for most of the enterprise Java development. Moreover, more and more people are starting to painfully realize that Scala won’t even make any significant dent on Java eco-system at all – remaining forever in 1-2% territory for very specialized projects where FP focus or DSL capabilities override any other requirements. With Java 8 coming up quickly, with Kotlin, Ceylon and Clojure nibbling on the edges (even if some of them don’t yet exist!), Groovy going strong – Scala simply doesn’t have much room to grow or maneuver.
10 weeks ago
The Elephants in the Agile Room
10 weeks ago
During the 10 years agile celebration meeting in Snowbird, UT, organized by Alistair Cockburn on February 12, after covering the walls with a couple of hundred issues cards, David Anderson noted that there was “an elephant in the room”, a topic that few are willing to debate in the pen, namely the Agile Alliance (its role, mission, accomplishments, etc.). After the lunch, a small group gathered and identified a few other such elephants in the room, other topics that the agile community is not really willing to tackle for a variety of reasons. We ended up with a long list of about 12 such “undiscussable” topics (or at least not discussable in the open).
from instapaper
10 weeks ago
A Case Against Using CoffeeScript
10 weeks ago
I recently started working at Instructure, an LMS provider that’s, for the most part, a ruby on rails shop. The team had started using CoffeeScript before I showed up, but gave the decision to me to keep it, or kick it to the curb. I think it says a lot about our company that we can use bleeding edge technology in our flagship product, and I’d hate to make any decisions that would hamper that culture. So, I write CoffeeScript at work.
Additionally, I’m writing an experiemental CoffeeScript branch of SnackJS. Once that’s done, I think I’ll have as much experience with using CoffeeScript as anybody, and probably more than most. I’ll have written a library by myself, and worked in a large application with other engineers in a public facing product.
But for now I’m still on the fence. However, this post is going to sound like I hate CoffeeScript. After a couple months of reviewing and writing CoffeeScript I’ve got a few beefs I’d like to get off my chest. Since there’s very little educated criticisms of the language out there, I’m happy to fill the gap :)
from instapaper
Additionally, I’m writing an experiemental CoffeeScript branch of SnackJS. Once that’s done, I think I’ll have as much experience with using CoffeeScript as anybody, and probably more than most. I’ll have written a library by myself, and worked in a large application with other engineers in a public facing product.
But for now I’m still on the fence. However, this post is going to sound like I hate CoffeeScript. After a couple months of reviewing and writing CoffeeScript I’ve got a few beefs I’d like to get off my chest. Since there’s very little educated criticisms of the language out there, I’m happy to fill the gap :)
10 weeks ago
Java Doesn't Need to Be So Bad
10 weeks ago
I do a lot of Java coding and I enjoy it. I admit that there is a lot of typing, often a lot of boilerplate and getting even simple tasks done can involve too much work. Most of the tools that try to fix these problems trade one moment saved for another lost. Maven's XML based configuration file is a good example: Thank you for making my project easier to manage and I won't forget that you made me edit XML to do so.
These are the things that you live with, these are the things you trade for using a language that thinks it's finishing what C++ started; a language that is loved equally by mammoth corporate IT departments, mammoth corporate IT vendors and mammoth corporate IT consultants. What you don't need to tolerate is this tendency to crazily over-engineer even the simplest solutions.
from instapaper
These are the things that you live with, these are the things you trade for using a language that thinks it's finishing what C++ started; a language that is loved equally by mammoth corporate IT departments, mammoth corporate IT vendors and mammoth corporate IT consultants. What you don't need to tolerate is this tendency to crazily over-engineer even the simplest solutions.
10 weeks ago
The HipHop Virtual Machine
10 weeks ago
We're always looking for ways to make our computing infrastructure more efficient, and in 2010 we deployed HipHop for PHP to help support the growing number of Facebook users. While HipHop has helped us make significant gains in the performance of our code, its reliance on static compilation makes optimizing our code time consuming. We were also compelled to develop a separate HipHop interpreter (hphpi) that requires a lot of effort to maintain. So, early last year, we put together a small team to experiment with dynamic translation of PHP code into native machine code. What resulted is a new PHP execution engine based on the HipHop language runtime that we call the HipHop Virtual Machine (hhvm). We're excited to report that Facebook is now using hhvm as a faster replacement for hphpi, with plans to eventually use hhvm for all PHP execution.
from instapaper
10 weeks ago
In praise of impractical programming
10 weeks ago
It’s great that it’s gotten easier for non-programmers to write code and build things. But that doesn’t mean we should forget the merits of weirder, whimsical, gloriously impractical approaches.
from instapaper
10 weeks ago
Scala's version fragility make the Enterprise argument near impossible
10 weeks ago
I have been working with Scala for more than five years. In those five years, I've seen Scala evolve and seen the ecosystem and community evolve.
An attribute of Scala is that the Scala compiler generates fragile byte-code. This means that all the code in an executable (JAR or WAR) must be compiled with the same library and compiler versions. If you're using Scala 2.9.1 in your project, you must compile against a version of Lift that's compiled against Scala 2.9.1 and all the Lift dependencies must also be compiled against that version of Scala. This is a reason that Lift has precious few Scala library dependencies. It's also a reason that Lift is sprawling... there are a lot of modules in Lift that need to be cross-compiled and rather than having an external ecosystem of modules, we need to make them part of Lift to make sure they are all compiled against all the versions of Scala that Lift supports.
from instapaper
An attribute of Scala is that the Scala compiler generates fragile byte-code. This means that all the code in an executable (JAR or WAR) must be compiled with the same library and compiler versions. If you're using Scala 2.9.1 in your project, you must compile against a version of Lift that's compiled against Scala 2.9.1 and all the Lift dependencies must also be compiled against that version of Scala. This is a reason that Lift has precious few Scala library dependencies. It's also a reason that Lift is sprawling... there are a lot of modules in Lift that need to be cross-compiled and rather than having an external ecosystem of modules, we need to make them part of Lift to make sure they are all compiled against all the versions of Scala that Lift supports.
10 weeks ago
Are You Agile?
11 weeks ago
The most agile teams we know of are consistently delivering the highest business value the fastest, and over the longest period. The most agile teams do seem to be the most efficient. But agility is not easy. While built on a set of very simple concepts, agility represents a fundamentally different way of doing business. High levels of agility require a substantial commitment to education and training, new tools and techniques, patient transition, and cultural change. This commitment must flow from management downward, and from the team upward.
agile
11 weeks ago
How Agile Are You? (Take This 42 Point Test)
11 weeks ago
Recently I saw a brief set of questions from Nokia to assess whether or not a team is ‘agile’.
And by ‘agile’, I think they meant to what extent the team was following agile practices Scrum and XP (eXtreme Programming), not whether or not they could touch their toes :)
I’m not sure if it was deliberately brief to emphasise the things that are the real *essence* of agile, but we’ve developed the questions into a more comprehensive set of statements. A set of statements that make a fuller assessment of someone’s status with agile principles and methods.
Here they are…
agilesoftwaredevelopment
And by ‘agile’, I think they meant to what extent the team was following agile practices Scrum and XP (eXtreme Programming), not whether or not they could touch their toes :)
I’m not sure if it was deliberately brief to emphasise the things that are the real *essence* of agile, but we’ve developed the questions into a more comprehensive set of statements. A set of statements that make a fuller assessment of someone’s status with agile principles and methods.
Here they are…
11 weeks ago
The Scrum but Test
11 weeks ago
Bas Vode has developped a small test for teams he was coaching at Nokia, it has been called Nokia Test.
In 2008, Jeff Sutherland improved it in adding a scoring system. In its CSM courses, he called it "Scrum But" test.
It is that version that we propose you to pass.
scrum
In 2008, Jeff Sutherland improved it in adding a scoring system. In its CSM courses, he called it "Scrum But" test.
It is that version that we propose you to pass.
11 weeks ago
What Powers Instagram: Hundreds of Instances, Dozens of Technologies
11 weeks ago
One of the questions we always get asked at meet-ups and conversations with other engineers is, “what’s your stack?” We thought it would be fun to give a sense of all the systems that power Instagram, at a high-level; you can look forward to more in-depth descriptions of some of these systems in the future. This is how our system has evolved in the just-over-1-year that we’ve been live, and while there are parts we’re always re-working, this is a glimpse of how a startup with a small engineering team can scale to our 14 million+ users in a little over a year. Our core principles when choosing a system are:
Keep it very simple
Don’t re-invent the wheel
Go with proven and solid technologies when you can
from instapaper
Keep it very simple
Don’t re-invent the wheel
Go with proven and solid technologies when you can
11 weeks ago
24 Common Scrum Pitfalls Summarized
11 weeks ago
Scrum is the most popular agile method… if you count all of the teams doing “Scrum Butt”. Doing Scrum really well is much harder and much rarer. Here is a list of 24 common pitfalls or bad behaviours of Scrum teams.
from instapaper
11 weeks ago
Product Engineering
11 weeks ago
Mike Lee discusses the many facets of product engineering: planning, implementing, testing, team, funding, marketing, customers, platform, market, and shipping, all from a non-technical perspective.
from instapaper
11 weeks ago
The end of social
11 weeks ago
Much as I'm tempted to talk about Facebook privacy, I'm going to resist. Plenty has been written about Facebook and privacy, Facebook and "forced" sharing, Facebook and sharing by default, Facebook this and Facebook that. And I'm sure much more will be written about it.
Tim O'Reilly has been supportive of Facebook. The company has frequently been clumsy, but it's also been willing to push the limits of privacy in ways that might be potentially creative and in ways that might potentially create more value for us than we give up.
from instapaper
Tim O'Reilly has been supportive of Facebook. The company has frequently been clumsy, but it's also been willing to push the limits of privacy in ways that might be potentially creative and in ways that might potentially create more value for us than we give up.
11 weeks ago
gist: 1406238
11 weeks ago
Thanks for pinging me; it's nice to know Typesafe is keeping tabs on this, and I appreciate the tone. This is a Yegge-long response, but given that you and Martin are the two people best-situated to do anything about this, I'd rather err on the side of giving you too much to think about. I realize I'm being very critical of something in which you've invested a great deal (both financially
and professionally) and I want to be explicit about my intentions: I think the world could benefit from a better Scala, and I'd like to see that work out even if it doesn't change what we're doing here.
from instapaper
and professionally) and I want to be explicit about my intentions: I think the world could benefit from a better Scala, and I'd like to see that work out even if it doesn't change what we're doing here.
11 weeks ago
The Revolution According to Steve Jobs
12 weeks ago
I can’t find the tape of my first interview with Steve Jobs. At some point in the past 28 years—the conversation took place in November 1983—it got lost. But I do have the 43-page transcript, complete with the transcriber’s misunderstandings (“lease the technology” instead of “Lisa technology,” for instance). It was the first of what turned out to be many interviews, currently stacked in a dog-eared tower of pages here on my desk. After Jobs died on October 5, I’ve found myself drawn back to this archive and now realize that it comprises an idiosyncratic portrait of Jobs himself as he evolved over the years.
from instapaper
12 weeks ago
Scrum-ban
12 weeks ago
As more people become interested in Lean ideas and their application to knowledge work and project management, it’s helpful to find ways that make it easier to get started or learn a few basic concepts that can lead to deeper insights later. For those that are curious about kanban in an office context, it’s not unusual to find people who are either currently using Scrum, or have some understanding of Scrum as representative of Agile thinking. One way or another, Scrum users are an important constituent of the Kanban audience. Since Scrum can be described as a statement in the language we use to describe kanban systems, it is also fairly easy to elaborate on that case in order to describe Scrum/Kanban hybrids. This can be useful for existing Scrum teams who are looking to improve their scale or capability. It can also be useful for more cautious new users who find comfort in an “established” method1.
from instapaper
12 weeks ago
Pre-Occupied: The origins and future of Occupy Wall Street
12 weeks ago
Kalle Lasn spends most nights shuffling clippings into a binder of plastic sleeves, each of which represents one page of an issue of Adbusters, a bimonthly magazine that he founded and edits. It is a tactile process, like making a collage, and occasionally Lasn will run a page with his own looped cursive scrawl on it. From this absorbing work, Lasn acquired the habit of avoiding the news after dark. So it was not until the morning of Tuesday, November 15th, that he learned that hundreds of police officers had massed in lower Manhattan at 1 A.M. and cleared the camp at Zuccotti Park. If anyone could claim responsibility for the Zuccotti situation, it was Lasn: Adbusters had come up with the idea of an encampment, the date the initial occupation would start, and the name of the protest—Occupy Wall Street. Now the epicenter of the movement had been raided. Lasn began thinking of reasons that this might be a good thing.
from instapaper
12 weeks ago
Manual:Short URL
12 weeks ago
According to World Wide Web inventor Tim Berners-Lee, good page addresses should never change.[1] Short URLs which hide complex programming code from the page address are good for webpage visitors. Please take a few minutes to devise a stable URL structure for your website before getting started, to reduce problems later.[2] This page has been divided into separate "how to" mini-guides listed below to make things easier.
mediawiki
12 weeks ago
DocForge Programming Wiki
12 weeks ago
Welcome to DocForge, an open wiki for programmers. Anyone can contribute documentation, articles, and tips for software developers. Our mission is to be a central repository for information helpful to those who create software.
softwareengineering
12 weeks ago
Programming Languages: What tool is right for which job?
12 weeks ago
We all talk about using the right tool for the job in the context of programming items. But which job? And what's the right tool for it?
I want your help in determining the answer for this.
softwareengineering
programminglanguages
I want your help in determining the answer for this.
12 weeks ago
The Rise and Fall of Bitcoin
12 weeks ago
In November 1, 2008, a man named Satoshi Nakamoto posted a research paper to an obscure cryptography listserv describing his design for a new digital currency that he called bitcoin. None of the list’s veterans had heard of him, and what little information could be gleaned was murky and contradictory. In an online profile, he said he lived in Japan. His email address was from a free German service. Google searches for his name turned up no relevant information; it was clearly a pseudonym. But while Nakamoto himself may have been a puzzle, his creation cracked a problem that had stumped cryptographers for decades. The idea of digital money—convenient and untraceable, liberated from the oversight of governments and banks—had been a hot topic since the birth of the Internet. Cypherpunks, the 1990s movement of libertarian cryptographers, dedicated themselves to the project. Yet every effort to create virtual cash had foundered. Ecash, an anonymous system launched in the early 1990s by cryptographer David Chaum, failed in part because it depended on the existing infrastructures of government and credit card companies. Other proposals followed—bit gold, RPOW, b-money—but none got off the ground.
from instapaper
12 weeks ago
Kerstbomen
12 weeks ago
Nou heet Mauro weer Jossef en woont hij in Alkmaar. De jongen is zo Noord-Hollands als de kaasmarkt daar. Hij moet alleen maar weg omdat hij zwart is. Althans zo subtiel zou de heilige Cruijff het gezegd hebben. Het mannetje woont acht jaar in Nederland. Hoe oud hij is? Negen. De wet zegt dat hij op moet rotten. En zolang de PVV in ons land de scepter zwaait is de wet de wet. Geen enkele uitzondering bevestigt de regels. Geen één hand durft over het hart te strijken. Wat is er gebeurd dat we dit land geworden zijn? Humor- en meedogenloos! Geen politicus in de buurt van Alkmaar durft zich aan de zaak Jossef te branden. Gevolg: een jochie dat hier acht van zijn negen levensjaren heeft gewoond wordt teruggestuurd naar zijn land van herkomst. Eritrea in dit geval. Een land waar hij niks te zoeken heeft en dus ook niks zal vinden. Hij loopt kans om samen met zijn moeder te worden opgesloten en gemarteld. Grote kans? Ja.
from instapaper
12 weeks ago
The making of the Xbox: How Microsoft unleashed a video game revolution (part 1)
12 weeks ago
Microsoft launched its Xbox video game console a decade ago this week. Nobody expected it to succeed. The skeptics were out in force when the giant-size console launched on Nov. 15, 2001.
But it turned out to be successful beyond Microsoft’s wildest expectations. Microsoft lost (or, more politely, invested) more than $4 billion in the first console. But it has created an entertainment business that is now much more valuable than that, said Robbie Bach, the former head of Microsoft’s game business and the highest-ranking executive who was present at the beginning of the project through his retirement last year.
Microsoft’s second console, the Xbox 360, and the game business that goes with it are now churning out more than $1 billion in profits a year in what has become Microsoft’s most successful diversification to date. The making of the Xbox was a historic event that changed gaming forever, allowing Microsoft’s brand to be associated with something cool and sexy for the first time.
from instapaper
But it turned out to be successful beyond Microsoft’s wildest expectations. Microsoft lost (or, more politely, invested) more than $4 billion in the first console. But it has created an entertainment business that is now much more valuable than that, said Robbie Bach, the former head of Microsoft’s game business and the highest-ranking executive who was present at the beginning of the project through his retirement last year.
Microsoft’s second console, the Xbox 360, and the game business that goes with it are now churning out more than $1 billion in profits a year in what has become Microsoft’s most successful diversification to date. The making of the Xbox was a historic event that changed gaming forever, allowing Microsoft’s brand to be associated with something cool and sexy for the first time.
12 weeks ago
Screaming Architecture
12 weeks ago
Imagine that you are looking at the blueprints of a building. This document, prepared by an architect, tells you the plans for the building. What do these plans tell you?
If the plans you are looking at are for a single family residence, then you’ll likely see a front entrance, a foyer leading to a living room and perhaps a dining room. There’ll likely be a kitchen a short distance away, close to the dining room. Perhaps a dinette area next to the kitchen, and probably a family room close to that. As you looked at those plans, there’d be no question that you were looking at a house. The architecture would scream: house.
from instapaper
If the plans you are looking at are for a single family residence, then you’ll likely see a front entrance, a foyer leading to a living room and perhaps a dining room. There’ll likely be a kitchen a short distance away, close to the dining room. Perhaps a dinette area next to the kitchen, and probably a family room close to that. As you looked at those plans, there’d be no question that you were looking at a house. The architecture would scream: house.
12 weeks ago
Clean Architecture
12 weeks ago
In the weeks since I started talking about the need to clean up our architecture, I’ve noticed a surprising resistance to the idea. Apparently the notion that it’s a good idea to hide the framework, UI, or database from the application code is not universally accepted.
I first blogged about this topic here, I did some short video blogs here, here, and I did a whole cleancoders.com episode on the topic. I’ve also done several keynotes on the topic, the slides for which are here, and a video recording of which is here.
from instapaper
I first blogged about this topic here, I did some short video blogs here, here, and I did a whole cleancoders.com episode on the topic. I’ve also done several keynotes on the topic, the slides for which are here, and a video recording of which is here.
12 weeks ago
The delivery mechanism is an annoying detail
12 weeks ago
In my The Frustrated Architect presentation at GOTO Aarhus in October*, I talked about how there are a number of "classic" software design techniques from the pre-agile era that are being used less and less. For example, things like UML, class-responsibility-collaboration cards and component-based design. This is a shame because some of these techniques can complement an agile way of working and would perhaps prevent some wheels from being reinvented. If people don't know about these techniques though, how will they adopt them? I'll come back to this shortly but, first, I was intrigued by this tweet from Uncle Bob a few weeks back.
from instapaper
12 weeks ago
Reflections on Kanban vs. Scrum development
november 2011
Done and done! 1,5 years of hard work at National Land Survey is over. What a great project! This post will be on my personal findings about Scrum team transition to Kanban. What worked and what not? Moreover, I will try to analyze the failures we made and to come up with some solutions. Let’s get started!
from instapaper
november 2011
An Alternative to Kanban: One-Piece Continuous Flow
november 2011
I'm pleased to be visiting here as a guest this week at Jeff's invitation. The topic at hand is kanban. Unfortunately, this entry is a bit long, because I want to go beyond the usual level of sound bites afforded to an important topic.
from instapaper
november 2011
How Long Will My Coffee Last?
november 2011
You can use this calculator to work out how long your coffee supply will last, or to calculate how much coffee you need to buy.
Adjust the sliders to reflect your situation and preferences, then see how many days your supply will last - calculated in front of your very eyes.
coffee
singlepurposewebsites
Adjust the sliders to reflect your situation and preferences, then see how many days your supply will last - calculated in front of your very eyes.
november 2011
Metroid Source Code Expanded
november 2011
This compressed file contains 9 text files that make up the entire source code for the original Metroid game for the NES. These files are an expansion of SnoBro’s Source code he posted a few years ago. The code has been changed to be assemblable with Ophis instead of x816 because of memory issues. Labels corresponding to address values have been added to every line to make the code easier to follow for beginners interested in understanding the inner workings of a Nintendo game. The labels also make the code easier to debug if it is modified. At this time, the source code is still a work in progress but it is much farther along than the original document. The title page is completely documented. The intro routine, end routine, password scheme and sound engine are described in detail. About a third of the game engine is detailed and about half of each game area page.
videogames
softwareengineering
sourcecode
november 2011
List of Algorithms
november 2011
A complete list of all major algorithms (300), in any domain. The goal is to provide a ready to run program for each one, or a description of the algorithm. Programming languages include Java, JavaScript and PHP, C, C++ either in direct form or generated from a Scriptol source.
softwareengineering
algorithms
november 2011
achievements
acting
actions
adobeair
adoption
aesthetics
agile
agilesoftwaredevelopment
alexpayne
algorithms
aliceinwonderland
amazon
analysis
anchoring
android
androidmarket
apml
apple
appleappstore
applications
appstore
architecture
art
arvidbux
asp.netmvc
associatedpress
audiobooks
automator
bands
barackobama
beer
blogging
boardgames
bookmarklets
books
boxee
broadband
browsers
burlesque
business
businessmodels
calendars
calibration
capslock
characteractors
china
chiptuning
chrishecker
chrismessina
christinelove
christophwaltz
civicissues
codereviews
coffee
compression
content
conversations
converters
copyleft
copyright
copyrightinfringment
cqrs
css
css3
curation
danbull
danielkahneman
darksideofthemoon
davidcross
davidsimon
deals
debian
declarations
dependencies
dependencyinjection
derhumpink
design
designpatterns
dice
diplomacy
distributedmachinelearning
documentaries
domaindrivendesign
domainnames
dominion
douglasadams
dutch
dvcs
ebooks
economics
eduardkhil
elections
emacs
email
epicbeardman
ereaders
ericschmidt
eventsourcing
evernote
everythingbuckets
examples
experience
extensions
facebook
facialrecognition
farmville
fastfood
fcc
feeds
fiber
filesharing
film
firefox
firmware
flowcharts
fonts
food
forms
forums
fragmentation
frameworks
freemium
from
gamedevelopment
gamers
gamesdesign
gametheory
garyhustwit
gawkermedia
generators
gimp
ginatrapani
git
gmail
goalsetting
google
googlecalendar
googlereader
government
gradients
grammar
graphs
gregyoung
guitarhero
gwt
hackergotchi
halflife
hamburgers
hammockdrivendevelopment
happymeals
haskell
hdtv
health
healthcare
heavyrain
helvetica
hibernate
history
hometheater
how-to
htc
html
html5
htpc
https
humour
ical
igf
igfawards
imagemanipulation
inception
independentgaming
infographics
insaneclownposse
instapaper
internet
internetidentity
internetmemes
interviews
inversionofcontrol
ios
ipad
iphone
itunes
jakobnielsen
jakobskjerning
janemcgonigal
jasonyip
java
javame
javascript
jeffbezos
jeffgerstmann
jesseschell
jewish
jimmykimmel
johnperrybarlow
jokes
jquery
jsr303
jurgenappelo
kennyg
kevinsmith
keyboards
keyboardshortcuts
kindle
labels
last.fm
ldap
lenasoderberg
leolaporte
lesbians
lewiscarroll
libraries
lifehacks
linkedin
linux
list
lists
liubolin
loadtesting
loremipsum
mac
macosx
management
manuals
manuscripts
marcopas
markdown
markuplanguages
martinfowler
maven
mcdonald's
mcdonalds
mediawiki
memes
memory
mercurial
military
mobile
mocking
modelviewpresenter
monopolies
movies
music
musicindustry
my
myspace
neilyoung
netbeans
netneutrality
networking
neuroscience
ngmoco
nhibernate
notes
notifications
nudity
nutrition
oauth
openbsd
openid
openidconnect
openup
overscan
papers
paris
parodies
passwords
patmetheny
paulfeldman
performancetesting
persistence
photographs
photography
pictures
pieterjanbezemer
pillows
pinkfloyd
pitchfork
playboy
podcasts
politics
portforwarding
posters
presentations
pricing
privacy
productivity
products
programming
programminglanguages
protocols
psychology
publicdomain
publishing
qrcodes
radio
rants
reading
regularexpressions
republicans
research
resumes
reviews
riavandijk
richhickey
rockband
rogerebert
routers
rss
ruby
scala
scalatest
scarcityeffect
scatch
scrum
security
seinfeld
semantics
Sent
shareholders
shell
shootinggalleries
simplenote
singlepurposewebsites
sittard
smileys
smodcast
socialnetworking
software
softwarearchitecture
softwaredevelopment
softwareengineering
softwaretesting
sofwaredevelopment
songs
sourcecode
sovietunion
spaceinvaders
spaces
spelling
spotify
spring
sprintplanning
sqlite
squarespace
standupmeetings
starwars
statistics
statusquoeffect
stephentobolowsky
stevejobs
stevenlevitt
streamingmedia
swaffelen
synchronization
synology
systemshock2
systemsthinking
taskbaseduis
tasks
technology
ted
telecommunicationsreformact
television
textbooks
tfs
thehumancentipede
thepriceisright
thewire
thomasbruso
tilburg
timezones
torque
trademarkinfringment
transparency
trololo
tutorials
tweetieformac
twit
twitter
typography
ubuntu
udidahan
unification
unittesting
useragents
userexperience
userinterface
userscripts
userstyles
v8
validation
valvesoftware
valvesteam
versioncontrol
video
videogames
videogamesdevelopmentstudios
videos
virtualization
visualizations
vmware
vmwareappliances
voicerecognition
wallpapers
wearehunted
web
webapplications
webdesign
webdevelopment
webhosting
weblogs
webm
whitecollarcrime
wikileaks
windows
wine
woot
writing
xboxlive
xhtml
xml
xmpp
xp
zynga