tags: reading

I didn’t read the entire article because it is too rambly and I don’t share the author’s affection for writing assembly, but a few fragments resonate well with me, for example this one:

“At numerous times I found that conscious isolation can sometimes indeed lead to more direct insights, techniques and solutions to existing problems, which otherwise are not taken into account, if all of our activity is only based on and influenced by the prior research of others. Focus always has a cost and research takes time. That is especially true in today’s open source culture and the endless hourly influx of hip new projects via social media.”

“A typical problem is that, in the absence of equations, they project literal meanings onto words such as ‘grains’ of space-time or particles ‘popping’ in and out of existence. Science writers should be more careful to point out when we are using metaphors. My clients read way too much into pictures, measuring every angle, scrutinising every colour, counting every dash. Illustrators should be more careful to point out what is relevant information and what is artistic freedom.”

“It is possible to talk about something and have the words themselves not be very telling. Background knowledge matters a lot. I asked a 20 something about Bob Dylan a few days ago and he had never heard of him. He didn’t know much about the 60’s. Neither does Watson. You can’t understand words if you don’t know their context.”

“Quite quickly the developer would arrive at a situation where the simplest course of action is to produce two implementations. One would be the genuine software desired by the tester and their tests. The other would be the software which the developer really wanted to build. Crucially, the switch in behaviour would be controlled by the environment. If there’s a test running, the software would behave like this. If not, it would behave like that.”

“While I was under the impression, going in, that I was free to check myself out at any time, the opposite was true — they weren’t going to let me leave until I was well enough to leave.”

“Zeus sits at the bar, he’ll buy a thousand and one drinks and the girls who he smiles at will raise their eyebrows and think of the pepper spray tucked into their sleeves.”

“The language you reach for to solve problems, prove that ideas work before implementing them for real, and to do interesting things with files and data.”

“[T]he Wu-Tang Clan sold its latest album, Once Upon a Time in Shaolin, through an online auction house. As one of the most innovative rap groups, the Wu-Tang Clan had used concepts for their recordings before, but the latest album would be their highest concept: it would exist as only one copy—as an LP, that physical, authentic format for music—encased in an artisanally crafted box. This album would have only one owner, and thus, perhaps, only one listener. By legal agreement, the owner would not be allowed to distribute it commercially until 88 years from now.”

“I don’t play games to have my skills tested. Many do, and that’s fair. I play games to have experiences, to feel smart and creative and badass, of course, but not to be tested by an imaginary examiner. When choosing a difficulty mode for a game, that’s far more about the time investment I want to make (do I not have time for a slow run, or do I want to make it last?) or how I want to feel (Wolfenstein had to go to easy, because when playing a game like Wolfenstein, I want to feel unstoppable). It’s not about difficulty, it’s about the style of play I want to extract from the game’s mechanics.”

“This is also a classic example of a science fiction invented thing - in my case, magic - which, when taken all the way to its logical conclusion, quickly results in phenomena which are too complicated to be palatably explained to readers or used meaningfully in storytelling. I have the same problem with many other things, usually time travel. The writer has a duty to overthink things.”

“The aim of our two year quest was always to see the toughest of all the machines. A dormant juggernaut that lies underground. […] It is for her love that we’ve done everything.”

“a proposal and proof-of-concept for an interactive book about programming the graphics processor”

I especially enjoyed the little “Make this” games in the Sample Chapter.

[I]t’s easier to handle the abstract concept “I was an insufferable, not funny young man” than to read the result of said young man’s typing into Notepad.exe in 1998.

What happens if we invest ten years in learning Lisp? Wonderful things, we get a wizard’s hat. If we invest ten years in PureScript I expect we’ll be dreaming of fizz buzz with semigroups and apply.

But what happens if we put ten years of study into JavaScript? Will we be as “incredibly productive” as we would be with ten years of Lisp? Or do we end up with two years of JavaScript productivity and five years of general-purpose broad principles we borrow from Java and Python?

“SemVer tries to compress a huge amount of information — the nature of the change, the percentage of users that will be affected by the change, the severity of the change (Is it easy to fix my code? Or do I have to rewrite everything?) — into a single number. And unsurprisingly, it’s impossible for that single number to contain enough meaningful information.”

“This is a tall tale of two companies: On the surface, Monolithoogle bears a mild resemblance to Google. Distributazon has some things in common with Amazon. These similarities are anecdotal and superficial. Accuracy is not the goal. At best, I am attempting to develop hyperbolic caricatures of the companies as archetypes.”

“[…] unmanned NASA and ESA programs have been putting landers on Titan, shooting chunks of metal into an inbound comet, driving rovers around Mars and continuing to gather a variety of priceless observations from the many active unmanned orbital telescopes and space probes sprinkled through the Solar System. At the same time, the skeleton crew on the ISS has been fixing toilets, debugging laptops, changing batteries, and speaking to the occasional elementary school over ham radio.”

“Fixed Gitk and Git Gui” […] is of much less significance of something like “When the history is over 10k commits, it does not crash trying to display it with Gitk”.

“I’m nearing 20 weeks of consecutive work. I wanted to write about it as it’s completely changed how I code and has had a substantial impact upon my life and psyche.”

“When you test audio gear, you focus on it much more than usual. You pick great, varied, well-recorded music, you play it a bit louder than usual, and you pay attention to the details. You immerse yourself in the music, create an experience with it, and appreciate it. That’s why new gear always sounds so good.

You can do that anytime you’d like without spending a dime.”

“I think as we start understanding more about how species of ants regulate their behavior, we’ll find many more useful applications for network algorithms.”

Chapter of “Pro Git” that can be read independently from the rest of the book (assuming one already knows some Git).

Free downloads available in mobi, ePub, and PDF formats.

[…] the fact that manually specifying version numbers to avoid running newer code is commonplace, expected, and a “best practice” horrifies me.

“[…] a system, Neo. That system is our enemy. But when you’re inside, you look around, what do you see? Businessmen, teachers, lawyers, carpenters. The very minds of the people we are trying to save. But until we do, these people are still a part of that system and that makes them our enemy. You have to understand, most of these people are not ready to be unplugged. And many of them are so inured, so hopelessly dependent on the system, that they will fight to protect it.”

“I now have a dozen little scripts that do nifty things with mail. […] And every time I write one, I feel like a genius. The whole system just delights me. I want everything in my life to work like this program.”

About CLI:

The power of this representation, though, goes much further. More difficult things can build upon the general pattern that evolves from the syntax:

create playlist “country plus katy” from last 11

Harder, but are we really ramping up the difficulty considerably over what we can achieve with a GUI? The GUI version of that last command isn’t hard, but it’s… fussier. It no longer “just works.”

“Always consider the implicit capabilities of the unimpaired user, and take steps to even the playing field. That’s what accessibility means. Not special treatment, but tailored access to the same treatment.”

“I anticipated a weird and slightly arduous journey, especially when it came to using the keyboard. To my great surprise, I picked it up immediately. Within 30 seconds, I checked the weather. Next, I read some stock prices. Amazingly, it even renders stock charts, something the blind have never had access to.”

“[…] people don’t really talk much about code base size; it’s not widely recognized as a problem. In fact it’s widely recognized as a non-problem. […] People in the industry are very excited about various ideas that nominally help you deal with large code bases, such as IDEs that can manipulate code as “algebraic structures”, and search indexes, and so on. These people tend to view code bases much the way construction workers view dirt: they want great big machines that can move the dirt this way and that. […] Industry programmers are excited about solutions to a big non-problem. It’s just a mountain of dirt, and you just need big tools to move it around. The tools are exciting but the dirt is not.”

“Flash is a successful business for Adobe, and we can understand why they want to push it beyond PCs. But the mobile era is about low power devices, touch interfaces and open web standards — all areas where Flash falls short.”

“The moral point being that if you’re pirating copyrighted material or clicking through idiotic EULAs without reading them, why on earth are you still slapping a copyright notice on software you yourself write and release?”

“Programming isn’t typically a job done under pressure, so seeing how people perform when nervous is pretty useless.”

“Let’s be clear: It’s fine to say that Flash is flawed; it is. (You know who’d agree? The Flash team.) It’s fine to hope for alternatives to take root. (Competition makes everyone better.) But let’s also be honest and say that Flash is the reason we all have fast, reliable, ubiquitous online video today.”

“If I have to write one more polyglot bash / awk / python script to gather data from log files on a bunch of different machines, demux that into a time-ordered event stream, pipe it through something to munge it into some slightly different format, ship that off via post to some web address and get some JSON back, parse that into some other shit, do some computation over it like aggregation or date math over time stamps with unlike representations, wrap the results up in an HTML table and send that table in a MIME-enabled e-mail to myself I think I am going to explode.

This is not a new or revolutionary idea. In fact, you probably do something close to this already. The problem is that “close” isn’t good enough.

“Programming is an exercise in overcoming how wrong you’ve been in the past. At first you’ll overcome the syntax errors, then you’ll overcome the structural errors, and then you’ll come to align your code with the standards of a greater community and you’ll feel safe and like you’ve made it. You haven’t — you’re still wrong because you’re always wrong. You are playing a game you cannot win. And let’s face it — if it was a game you could win you’d not be playing at all.”

For example, I want the next C grammar to define that a space comes between any keyword and an opening parenthesis. “if (foo)” would be legal, but “if(foo)” would not. Not a warning, not optionally checked, but actually forbidden by the language parser. Flat out illegal. Can’t compile.

“Current optical tags, such as barcodes, must be read within a short range and the codes occupy valuable physical space on products. We present a new low-cost optical design so that the tags can be shrunk to 3mm visible diameter, and unmodified ordinary cameras several meters away can be set up to decode the identity plus the relative distance and angle.”

links collected by
Maciej Konieczny

latest · tags · feed · twitter