Test-Driven Development is Stupid
Blog of Agatha Mallett: A post in which I provocatively argue that test-driven design results in worse code. I cite real-world examples, discuss why these failures occur, and suggest alternatives.
Blog of Agatha Mallett: A post in which I provocatively argue that test-driven design results in worse code. I cite real-world examples, discuss why these failures occur, and suggest alternatives.
Longer answer: it depends on what you mean by "equivalent". Pointer arithmetic and array indexing are equivalent. In other aspects, pointers and arrays are different.
As the UK's politicians continue to fail to understand what "strong cryptography" or "banning" even mean, I thought I would have a look at how simple strong cryptography can be.
I used to work as a developer in the “core” group at Opera that developed thePresto web engine. During this period, I often wondered just how many developers...
A few weeks ago I’ve seen an interesting flock of tweets initiated by this question: This question and the tweets that followed put my brain on quite an animated discussion…
Rails apps start out quickly and beautifully, but after a year features are a struggle, tests are slow, developers are grinding, and stakeholders are unhappy. “Skinny controllers and fat models” ha...
Twilio Segment is a customer data platform (CDP) that collects, cleans, and activates customer data, sending events to hundreds of tools with one API.
It’s no secret that the Microsoft Visual C++ compiler has lots of non-standard behaviors. What’s even more unfortunate is that those behaviors are subsequently used by different libraries. Ultimately,
Yesterday I was curious about how git push works over SSH. I’m getting more used to using strace to figure this kind of thing out, so I gave it a shot. If I strace pushing to this site’s repository, this shows up:
In this tutorial well learn how to create a chat client that communicates with a Socket.IO Node.JS chat server, with our native Android Client! If you want to jump straight to the code, it's on GitHub. Otherwise, read on!
I gave the best programming interview answer I may have ever given last Friday. The interviewer hauled out FizzBuzz and asked me to solve it. It took me a minute to stop laughing. FizzBuzz is a brain-dead simple programming problem, used pretty much to tell if a developer has a pulse at all. It is…
In my attempts to learn the C programming language well enough to write my own C compiler , I've encountered some very interesting examples of C syntax that you generally don't see every day. All of these examples you'll see here will compile without warnings or errors even with very strict compiler flags in gcc and…
The first computer I used had about 2KB of RAM. The other day, I compiled a 2KB Common Lisp script into a 16MB executable to get its startup (and total execution) time down from 2s to subjectively instantaneous — and that didn't bother me the least, for my current computer has 8GB of working memory…
Blog about Ubuntu from a kernel engineer
After flying this past weekend (together with Gabriel and Leandro) with Gabriel's drone (which is an handmade APM 2.6 based quadcopter) in our town (Porto Alegre, Brasil), I decided to implement a tracking for objects using OpenCV and Python and check how the results would be using simple and fast methods like…
WebRTC was created primarily for video and voice communication but it has the API to send raw binary data between two browsers as well. This opens up a lot of opportunities to create more peer to peer web application which are supported by modern browser. There are already a lot
I just had my minute of fame! I was just interviewed by Fog Creek on their development blog. Fog Creek is Joel Spolsky's company. We talked about how I got into software development, what I currently do, my current setup and my favorite books. I've been a lifetime fan of Fog Creek Software and it just feels so great…
This is a companion to my post on the expression problem and tables . In this post I explore ways we can benefit from manipulating rich representations of programs (structural editing).