Smash Company Splash Image

LATEST ENTRIES

October 1st, 2014

In Technology

No Comments

C++ wants Lisp macros

Apparently C++ templates are getting better.

Lots of languages have added enough meta-programming to imitate Lisp marcos. Paul Graham predicted this:

8. A notation for code using trees of symbols.

9. The whole language always available. There is no real distinction between read-time, compile-time, and runtime. You can compile or run code while reading, read or run code while compiling, and read or compile code at runtime.

Running code at read-time lets users reprogram Lisp’s syntax; running code at compile-time is the basis ...

Read More Source

October 1st, 2014

In Technology

No Comments

Every function in Haskell officially only takes one parameter

The purity of Haskell is, of course, very interesting:

Every function in Haskell officially only takes one parameter. So how is it possible that we defined and used several functions that take more than one parameter so far? Well, it’s a clever trick! All the functions that accepted several parameters so far have been curried functions. What does that mean? You’ll understand it best on an example. Let’s take our good friend, the max function. It looks like it takes ...

Read More Source

October 1st, 2014

In Business

No Comments

Problems in the USA economy started in 1954

I already knew that 1958 marked the beginning of some inflection point, where the wages of young males began to flatline, a fact which brought the Baby Boom to an end. But I am surprised to see that problems in the USA economy were already taking shape as early as 1954:

We all know that Joseph McCarthy’s attack on the labor unions had big political effects, but here we see that it also had big economic effects.

Source

October 1st, 2014

In Technology

No Comments

Abstractions are slow

Interesting:

Trampolining/thunks/laziness is slow If you are unfamiliar, here is a detailed description of trampolines, and I’m going to steal his example.

Consider a corecursive pair of functions:

def odd1(n: Int): Boolean = { if (n == 0) false else even1(n – 1) } def even1(n: Int): Boolean = { if (n == 0) true else odd1(n – 1) }

If you try to call these for large n, you will rapidly get a stack overflow.

A trampoline is the following construct:

sealed trait Bounce[A] case class ...

Read More Source

October 1st, 2014

In Business

No Comments

Economic growth concentrates at the top

Interesting:

Source

October 1st, 2014

In Business

No Comments

Scrum is an industry where everyone scams everyone

Search for “scrum master certification” on Google and you get an endless sea of results:

“Agile” started with some noble ideals but has since become a bit of a scam, where the scamsters “certify” other people, so they can also become scamsters, and everyone makes huge money talking about theory, but no one has any clue about how to create good software.

Source

September 29th, 2014

In Philosophy

No Comments

Public meltdowns, in the era of the Internet, are forever

Over the centuries, lots of people have fallen into depression, and then recovered, and some have even gone on to do great things, great art, great politics, etc. Winston Churchill suffered some epic episodes of depression, but he kept coming back and fighting.

The Internet changes things. Nowadays people often make the mistake of saying in public would have in the past only been said in private. The British aristocracy had the saying “No man is a hero to his ...

Read More Source

September 29th, 2014

In Business

No Comments

Is Facebook repeating all of Friendster’s mistakes?

Queers are leaving Facebook:

If you haven’t heard of Ello before this week, you’re not alone. Just this morning my Facebook timeline blew up with friends offering invite codes for what I assumed was a new Gilt-like shopping site, and what turned out to be a new and friendlier social network, which would allow anyone who wanted to be a part of it be who they wanted to be, complete with the name they’ve chosen for themselves.

Ello’s uptick in popularity comes ...

Read More Source

September 29th, 2014

In Business

No Comments

Declining wages spread to the rest of the West

In the USA, real wages for men have been declining since 1973:

Now, this tragic downward spiral is spreading to other Western nations:

Real wages continue to fall in the UK and elsewhere, yet despite this striking feature of the labour market, some commentators anticipate resurgent pay growth in the near future. This column argues that the absence of any improvement in the UK’s productivity performance – together with evidence that nominal wage growth is flatlining and real wage growth ...

Read More Source

September 28th, 2014

In Technology

No Comments

Queues are databases

Interesting:

We’ve been using RabbitMQ for messaging for a long time. Some messages are purely reactive: An object was changed, so some other subscribing application needs to react by updating its data structures to reflect the change. This is an event. Other messages represent jobs. Jobs are tasks that are queued up for processing. Processing photos, for example, is a classic job. Jobs don’t fall that well into the RabbitMQ/AMQP framework because it’s designed for messaging and is, despite support for things ...

Read More Source

September 23rd, 2014

In Technology

No Comments

We need a new protocol to replace HTTP and allow for software

About this:

” We do not control the environment executing our JavaScript code, interpreting our HTML, or applying our CSS. Our users control the device (and, thereby, its processor speed, RAM, etc.). Our users choose the operating system. Our users pick the browser and which version they use.”

The original idea of a “browser” was something that was as agnostic as possible about its environment, but somehow managed to deliver a nearly universal experience. The traditional idea of a “browser” does not ...

Read More Source

September 23rd, 2014

In Technology

No Comments

Treacherous unexpected pitfalls in Java

Very interesting, this is a mistake I could easily make:

After being quite puzzled for a while as to why this was happening finally I found the answer in Java 7 api docs for Process.

Because some native platforms only provide limited buffer size for standard input and output streams, failure to promptly write the input stream or read the output stream of the subprocess may cause the subprocess to block, or even deadlock.

They found this fix:

They remark:

This is so ...

Read More Source

September 23rd, 2014

In Technology

No Comments

A painful pause while my app is running

I used Clojure to build a RESTful API. I was successful in so far as that went, but now I face the issue that every once in a while, the program pauses, for a painfully long time — sometimes 30 seconds, which causes some requests to the API to timeout. We are still in testing, so there is no real load on the app, just the frontenders, writing Javascript and making Ajax calls to the service.

The service seems like ...

Read More Source

September 22nd, 2014

In Business

No Comments

How to publish one’s own book

Interesting:

I had been reading Nathan Barry’s excellent book Authority and something about it inspired me. I started throwing around ideas, things that I knew well and that weren’t well covered already, and I turned up Stripe. I know Stripe very well having used it for a bunch of projects in the past few years. I also know Rails, using it in most of those projects plus at my day job. I knew for sure that there were things about payment ...

Read More Source

September 22nd, 2014

In Technology

No Comments

How to restart public JVM services

How do have zero-downtime restarts and upgrades? This is interesting:

We’re going to use Stuart Sierra’s excellent component project to manage the lifecycle of our service which, for the moment, will simply store a random number on initialisation and serve that back in response to any request. Getting Jetty to start on a random, operating system assigned, port is simply a matter of passing zero as the desired port number. If we then communicate this port number in some way ...

Read More Source

September 22nd, 2014

In Technology

No Comments

Async is state machines

I thought I linked to this before but now I can not find evidence of the earlier link:

The State Machines of core.async

It seems this idea has been around for decades but only during the last 2 years did the idea go mainstream. Python and Clojure and Javascript have all added libraries that allow async programming. All of these libraries use state machines to hide the reality of “callback hell”.

I’m going to use a pretty trivial function to examine ...

Read More Source

September 22nd, 2014

In Technology

No Comments

Transducers in Javascript

Transducers in Javascript.

This is an interesting sentence:

The reduce function is the base transformation; any other transformation can be expressed in terms of it (map, filter, etc).

All of the programming languages seem to be adding all of the same features. Over the last 2 years, suddenly people woke up and realized they could escape “callback hell” by using finite state machines to enable a pleasant API for async programming, core.async being a good Clojure example.

Now James Long adds transducers to ...

Read More Source

September 22nd, 2014

In Technology

No Comments

What is so hard about disequilibrium dynamics?

This is a throwaway line by Paul Krugman:

What are the alternatives? One — which took over much of macro — is to do intertemporal equilibrium all the way, with consumers making lifetime consumption plans, prices set with the future rationally expected, and so on. That’s DSGE — and I think Glasner and I agree that this hasn’t worked out too well. In fact, economists who never learned temporary-equiibrium-style modeling have had a strong tendency to reinvent pre-Keynesian fallacies (cough-Say’s ...

Read More Source

September 22nd, 2014

In Philosophy

No Comments

Is depression honest?

Interesting:

Depressed Rand is weird. Don’t get me wrong, regular Rand is weird, too. But depressed Rand magnifies the bad 10X and minimizes the good. He refuses to even acknowledge good news and, because he’s a pretty smart guy, he can usually argue for why that good news is actually just temporary and will turn to shit any minute. The weird part is, I think depressed Rand is actually a very authentic version of myself. When I felt depressed, I upheld ...

Read More Source

September 22nd, 2014

In Business

No Comments

The sacrifices of women who are CEOs

Interesting:

Nega-Brianna I’m late for a programming meeting with Maria, and don’t have time to be stuck in Boston traffic. So instead of grabbing my car keys, I don black, skin-tight leather armor and leap on my motorcycle. It’s a 2009 Honda CBR600RR in racing red — something straight out of Akira. I’ve leaned into highway turns at 80 mph feeling nothing but speed, the air whipping all around me, and my thighs gripping a 212°F engine for dear life. My emotional ...

Read More Source

September 22nd, 2014

In Technology

No Comments

The problems with Object Oriented Programming are well known

This is a great summary of all of the arguments against Object Oriented Programming:

Equality

Let’s look at intensional equality as provided by object identity. Apparently this is not what we want at all times, otherwise we wouldn’t see this pattern called ValueObject 3. A type like Javas String is a well-known example of a successful ValueObject implementation. The price for this freedom of choice is a rule that the == operator is almost useless and we must use equals because ...

Read More Source

September 22nd, 2014

In Technology

No Comments

Why do people use inheritance in Javascript?

I like this:

Why do people use inheritance?

JavaScript makes inheritance a pain in the ass to implement, so why is it so popular among frameworks? Part of the problem is that JavaScript has always looked like a flimsy lightweight scripting language next to Java and its strongly typed kin; keen to prove that they are using a real language for big people, JavaScript developers have rushed to adopt an OO feature that was never very good in the first place. Strongly ...

Read More Source

September 22nd, 2014

In Technology

No Comments

Inheritance is evil

Interesting:

All of the pain caused by inheritance can be traced back to the fact that inheritance forces ‘is-a’ rather than ‘has-a’ relationships. If class R2Unit extends Droid, then a R2Unit is-a Droid. If class Jedi contains an instance variable of type Lightsabre, then a Jedi has-a Lightsabre.

The other kind of inheritance

By the way, my gripe is with concrete inheritance – one class deriving from another and inheriting behavior from the parent class. I have no problem with interface inheritance, where ...

Read More Source

September 22nd, 2014

In Business

No Comments

Crime no longer lifts people out of poverty

After 2 centuries where crime lifted people out of poverty, the USA faces a situation where crime no longer helps people:

Chuck and Mike were criminals: they were complicit in the barbarism of the drug trade. But, in the Mertonian sense, they were also innovators. Goffman describes how they craved success in mainstream society. They tried to get an education and legitimate jobs, only to find themselves thwarted. Selling crack was a business they entered into only because they believed that ...

Read More Source

September 22nd, 2014

In Philosophy

No Comments

More celebrity photos leaked

I’m left thinking that the Cloud is not ready to be used for consumer services. Developers such as myself know the risks, but the average consumer does not.

Gabrielle Union has been hit in the latest string of hacked, stolen, and leaked nude photos of female celebrities, and her legal team will be contacting the FBI regarding the matter. She and her new husband Dwyane Wade have released a joint statement, highlighting the callous treatment of women, particularly women ...

Read More Source

September 22nd, 2014

In Philosophy

No Comments

Getting famous with criminal pranks

The trend toward outrageous pranks is disturbing. The latest cause for concern is a guy grabbing women’s asses and recording their reactions — and making money via YouTube with this. Hopefully the women can press charges. There is plenty of video evidence.

Sam Pepper is a successful YouTube prank star. His videos frequently have over one million views and he’s well known in the community for being outrageous. Yesterday he posted a video where he went around to young women ...

Read More Source

September 21st, 2014

In Business

No Comments

The struggle between Uber and its drivers

Uber’s drivers are hemmed in by Uber’s changing terms, feel the need to organize a union:

Kazi drives a Toyota Prius for Uber in Los Angeles. He hates it. He barely makes minimum wage, and his back hurts after long shifts. But every time a passenger asks what it’s like working for Uber, he lies: “It’s like owning my own business; I love it.”

Kazi lies because his job depends on it. After passengers finish a ride, Uber asks them to rate ...

Read More Source

September 21st, 2014

In Business

No Comments

Yet another investor complains about low rates

Are these people stupid? Yet another article complaining about low rates. Rates were higher in the 1990s, but we still had the original Internet boom.

Gurley’s thesis isn’t hard to follow: Companies are being rewarded by the market for spending — and losing — huge sums of private capital that they can cheaply and quickly raise given the current investment and equities climate. Or, put another way, investors are giving companies huge sums to burn, because the market is willing to ...

Read More Source

September 20th, 2014

In Technology

No Comments

The Dark Age Of Emacs

I am curious why such a famous text editor is in such terrible shape, and so far behind industry best practices when it comes to stuff like package management. This seems like a good argument:

Code from the Dark Age of Emacs is kept in blog posts, hosted on EmacsWiki, stuck in some obscure directory on university domains, lost to the ether that is personal websites with expired hosting… Tracking down updated versions is nigh impossible, because they’re often ...

Read More Source

September 12th, 2014

In Business

No Comments

Wikipedia lacks women

Interesting:

It is sometimes argued that women simply have less time to contribute to Wikipedia, due to family commitments. This is a fallacy. Firstly, the United Nations University survey found that only 33.29% of respondents had a partner, and only 14.72% had children. The difference between readers and contributors was negligible here, and the survey report’s analysis indicated only a minor difference in parenthood percentages for male (15.1%) and female (13.7%) respondents. It is patently obvious that girls and women in ...

Read More Source

September 10th, 2014

In Business

No Comments

A corrupt for-profit college

Sickening:

What was working at Neumont like with Ned Levine as President? A former student, Jason Aquino, claimed that Levine harassed him and other students at the school. Another student, Ryan Elkins, was “banned” from campus after starting a blog talking about some of his experiences at Neumont. The CollegeTimes team was also bribed and then threatened by Levine as well. Does Mr. Levine maintain a carrot/stick attitude with his employees? What did you witness happen to Kristi Robertson in ...

Read More Source

September 9th, 2014

In Technology

No Comments

How to avoid race conditions in Java

Interesting:

Giving a precise answer involves examining the complete Java program – depending on the context in which this snippet executes, the transformed snippet may or may not be equivalent to the original. For example, if there are no writes to volatileF (and so regV is always 0 and so is regNV) in the Java program then the transform is trivially safe. However, it is more interesting to be able to make local judgments when JIT compiling a single method. Specifically, ...

Read More Source

September 9th, 2014

In Business

No Comments

What sort of social life do you have if you live at work?

I have often worked over-night at work, but I can not imagine doing this for several months on end. Mostly, I wonder what sort of social life these people have?

Ben Discoe, a Google [X] UI programmer, says he lived on Google’s campus for 13 months.

” I had a house payment and alimony to pay,” Discoe writes. “No money left for South Bay rental prices. I got a 1990 GMC Vandura custom conversion van for $1800 (blue velour, ...

Read More Source

September 9th, 2014

In Philosophy

No Comments

Women who defend their abusers

Sad:

Source

September 9th, 2014

In Philosophy

No Comments

Vladimir Voevodsky grounds mathematics on Homotopy Type Theory

Interesting:

Voevodsky, a professor at the Institute for Advanced Study in Princeton, wants to bring together two streams of development of today’s mathematics. ETH has invited him to present his ideas in Zurich as a speaker of the 2014 Paul Bernays Lectures in September. Giovanni Felder, the director of the ETH Institute for Theoretical Studies (ITS), will introduce his research to the lecture audience at ETH. He says: “Voevodsky is developing a new theory which places mathematics on a new foundation. ...

Read More Source

September 8th, 2014

In Business

No Comments

Sarah Lacy believes in patience

Interesting:

Nearly every single investor Pando has has asked me how more money or algorithms can scale our company faster. My answer is always: They can’t. It’s just going to take five to ten years of solid work to build the media company we want to build. There is no shortcut.

Further, I’ve been told– again and again– that there is no way to build a huge ad-based business without Huffington Post/BuzzFeed-like page views and scale. I disagree with that one ...

Read More Source

September 8th, 2014

In Business

No Comments

The sharing economy gives rise to the scam economy

Pathetic:

Kreyos’ story is starting to feel as old as time itself. It went live on Indiegogo in June last year, trying to raise $100,000 for what it promised to be the only smartwatch to combine both voice and gesture control. It ended up with 15 times that amount: $1.5m. Its Meteor smartwatch would track sleep, and exercise, and be waterproof. Kreyos promised that it was ready to go straight into production when funding closed in August and would ship ...

Read More Source

September 8th, 2014

In Technology

No Comments

The Shen language was shaped by illness and rejection

I have become interested in the Shen language. While reading the “history” page, I notice that illness and death play a large role, and also rejection of new ideas by audiences which misunderstand the speaker:

The appearance of Qi was swiftly followed by a serious illness that laid me up for 2006 and most of 2007. Following a partial recovery in 2008, a factorising version of the Qi compiler was introduced which made Qi competitive with the fastest hand-compiled Lisp ...

Read More Source

September 8th, 2014

In Business

No Comments

Innovation to end The Great Stagnation

Interesting:

“It’s pretty amazing to hold leather that no pig or cow died for,” says Lindy Fishburne, an officer of the Thiel Foundation. She is describing a slightly creepy “biofabricated” product made by a startup the foundation funded with a $350,000 donation. The company, named Modern Meadow, makes leather and, indeed, meat by taking skin or muscle samples from animals via biopsy and then growing them in vitro. Modern Meadow is just one of 19 futuristic startups that have received ...

Read More Source

September 8th, 2014

In Philosophy

No Comments

Cat scratch fever can be transmitted by ticks

It is incredible to consider how much evil ticks do. Apparently “cat scratch fever” is only sometimes from cats, it is technically Bartonella infection, which commonly comes from tick bites.

Source

September 8th, 2014

In Business

No Comments

Apple has been sloppy about security

Apple allowed brute force attacks on iCloud? Amazing and awful:

First the company updated the iCloud website to prevent brute-force attacks, patching a vulnerability that should never have been there in the first place. Now it plans to add more security features to iCloud, allowing it to message people when the service is backed up, passwords are changed, or a new device is used to access the service for the first time, according to a Wall Street Journal report.

Source

September 8th, 2014

In Business

No Comments

Gawker struggles to avoid full impact of unpaid-intern lawsuit

Interesting:

In the letter, we learn that Gawker doesn’t want to have to post the notice in its offices, on the basis that it no longer employs unpaid interns. But, as the plaintiffs point out, several of Gawker’s current staffers began their career at the company as unpaid interns, and so would be entitled to join the class.

We also learn that Gawker doesn’t want to allow social media to be used to reach prospective plaintiffs, even though that’s exactly the best ...

Read More Source

September 8th, 2014

In Philosophy

No Comments

Professors using Facebook for class

Interesting:

I tried a secret Facebook group with an online class over the summer—we didn’t have to be Facebook friends, which was a relief, and far from creepy, it reinforced for me that it’s during these informal interactions outside the classroom where actual learning happens.

Some professors do see value in the emailed lecture notes, holding class conversations on Twitter. To do any of this means long syllabi with explanations and tutorials on technology to get everyone up to snuff. Some students ...

Read More Source

September 8th, 2014

In Technology

No Comments

How should Twitter work?

I am thinking this might be a new business model for me to work toward:

As a reader, I seek an algorithm which weeds out some repetition. For instance I sometimes see a Vox.com article in my feed from three different sources — it would suffice to see it once, along with a color shading indicating that some other people in my feed were tweeting the same thing. I also would like blocks on tweets about the ...

Read More Source

September 8th, 2014

In Philosophy

No Comments

Prosecutors show no regrets about jailing innocent men

Disgusting:

Last week, two men were released after spending 30 years in prison in North Carolina. They were falsely convicted of rape and murder in 1983. They were both exonerated by DNA evidence. The man who prosecuted them is, proudly, no pussy.

Henry Lee McCollum (pictured) and Leon Brown are both mentally disabled. It now appears that their confessions to the crime were coerced, and the details in their confessions the product of prompting by the police. McCollum was sent to ...

Read More Source

September 7th, 2014

In Philosophy

No Comments

The many lives a woman might live

Interesting project:

Things I love about this project? It’s whimsical and transformative, and manages to both reflect the way the quality of a woman’s life can be the direct result of the man she ends up with or doesn’t, for better or for worse, and whether or not she has kids and how many — while also subverting that notion. She’s an everywoman while also highly individual. Though she’s partnered in every photo, her income and class and taste are ...

Read More Source

September 6th, 2014

In Philosophy

No Comments

More awful news about racist police

Very sad:

In one message, Officer Elsbury — whose patrol included the area around the historically black Southern University — wrote that blacks are “nothing but a bunch of monkeys,” and that the “only reason they have this job is the nigger, nigger in them.” It is unclear what “job” he is referring to.

In another text, he wrote that “I wish someone would pull a Ferguson on them and take them out. I hate looking at those African monkeys at work…I ...

Read More Source

September 4th, 2014

In Philosophy

No Comments

Tortoise survives 32 years in an attic

Amazing story:

Back in 1982, the Almeida Family was saddened to learn that their beloved pet, Manuela, a young red-footed tortoise, had gone missing. Their house was under renovation at the time, so the family just assumed that the slow-moving animal had slipped out through a gate left open by the construction crew — disappearing into the forest near their home in Realengo, Brazil. But they couldn’t have been more wrong.

The true fate of their lost pet remained a mystery for ...

Read More Source

September 4th, 2014

In Philosophy

No Comments

An exaggerated sense of entitlement regarding celebrity photos

People’s reactions to the leaked celebrity photos are pretty gross. Jezebel has a nice response to the hatred being expressed at the celebrities:

These women got themselves into this situation by owning their bodies and their sexuality. Doesn’t that mean everyone on Reddit should own those things too? As one redditor pointed out (and I am paraphrasing here because I’m not going back there), “we only know them as bodies, so this isn’t that different.”

Stealing private photos and posting them ...

Read More Source

September 4th, 2014

In Business

No Comments

How can a corporation keep its employees from spying on celebrities?

This must be a big problem for all corporations, but it sounds like it is worse at Apple:

Eva Longoria: “I’ve had a lot of problems of people breaking into my email”

Billy Bush: “Hacked?”

Eva Longoria: “Yeah my Mac email… not hacked, just go get it from the stores and I had a big problem with that.”

Kit Hoover followed up, asking: “Wait, what were they sending you? Like ‘Hi Eva, my name is John?’”

Eva Longoria: “Yeah. ‘I made a dress I want ...

Read More Source

September 4th, 2014

In Technology

No Comments

New discoveries with The Sims

I have never played the Sims game. I did play Sim City back in the 1990s. I was first introduced to the game in 1994 and lost a weekend discovering all I could about it. In my life I have probably played the game 100 times?

The Sims has a strong culture around it, which is something that only a handful of games have achieved. This whole bit was funny and interesting:

But for whatever reason, I’d just never played ...

Read More Source

September 4th, 2014

In Technology

No Comments

Tech stereotypes I did not know: devops more exciting than programming

Last night I was a table full of programmers and devops. One of the devops said “I’ve been thinking that I’d like to convert to programming.” Another devops said “You will be bored.” Everyone nodded in agreement. I was surprised by this. Is this some known conventional wisdom? I get the adrenaline rush of having to fix the servers when they have crashed and you are offline and the siren is going, but is that more interesting, over the long ...

Read More Source

September 4th, 2014

In Business

No Comments

There is an insane amount of blackhat hacking going on

Interesting:

4. The frequent source of new leads for targets seems to be newcomers who know somebody they want to hack and have stumbled onto one of the networks offering services via search terms or a forum they frequent. The new contributor will offer up a Facebook profile link, plus as much information as is required by the hacker to break the account, plus possible assistance in getting a RAT installed if required. In exchange the hacker and ripped will ...

Read More Source

September 3rd, 2014

In Philosophy

No Comments

What would a Pelagian version of math look like?

Nicely said:

The world does not suffer from an oversupply of clarity and understanding (to put it mildly). How and whether specific mathematics might lead to improving the world (whatever that means) is usually impossible to tease out, but mathematics collectively is extremely important.

I think of mathematics as having a large component of psychology, because of its strong dependence on human minds. Dehumanized mathematics would be more like computer code, which is very different. Mathematical ideas, even simple ideas, are often ...

Read More Source

September 3rd, 2014

In Business

No Comments

The problem building a business to cater to the poor

Interesting:

1) Poor areas are overrun with corruption and graft. Its very hard to do the right thing, when individuals with power will actively work to put a bribe barrier between you and your work. Its like these individuals smell out good intentions and attempt to tax them for the perceived weak-minded good intentions. An example would be, after my brother created several successful startups using ex-cons, he wanted to turn the program over to the City. He quickly learned ...

Read More Source

September 3rd, 2014

In Business

No Comments

The problem with the current tech startup scene

Though ignored by the current tech startup scene, there are some huge problems that need to be solved in the USA:

To your left are single mothers, 80% of whom, according to the US Census, are poor or hovering on the nasty edges of working poverty. They are struggling to raise their kids in a country that seems to conspire against any semblance of proper rearing: a lack of flexibility in the workplace; a lack of free or ...

Read More Source

September 3rd, 2014

In Technology

No Comments

How ignorant am I, and how do I formally specify that in my code?

In computer programming, the static type advocates wear a perpetual sneer, claiming that many problems in programming would be solved if only we adopted their approach. And yet, many languages are statically typed, and software written with those languages continue to have a large number of bugs (for example, think of any open source Java project over time). So clearly, static typing does not get us to Nirvana.

The most obvious argument against static typing is that it claims a ...

Read More Source

September 2nd, 2014

In Technology

No Comments

Bayesian calculations often depend on sampling methods such as Markov Chain Monte Carlo?

I really wish I understood this article. I need to commit to spending some serious time studying statistics, so I can catch up with the modern boom in data analysis. Because 90% of this article is over my head. But from what I can glean, it is very informative:

You’ll noticed that I glossed over something here: the prior, P(Ftrue). The prior allows inclusion of other information into the computation, which becomes very useful in cases where multiple measurement strategies are ...

Read More Source

September 2nd, 2014

In Technology

No Comments

Transducers are coming to all the core functions of Clojure

Interesting, though I think this is only a convenience:

One of the parts of the announcement of transducers was that clojure’s core functions (map, filter, take, etc) that normally operate on sequences will gain a new arity that returns a transducer when called with a single argument that’s a function. The new code for the 1-arity map looks much like what we already wrote (ignore the other arities for now).

;; Source of the new arity of the ‘map’ function. (defn map ...

Read More Source

September 2nd, 2014

In Technology

No Comments

We can not estimate how long that software project will take

This is great:

Combining Independent Estimates Improves Estimation Accuracy

The average of effort estimates from different sources is likely to be more accurate than most individual effort estimates. A key assumption for accuracy improvement is that the estimates are independent, which is true if their sources differ in expertise, background, and estimation process. A Delphi-like estimation process, such as “Planning Poker,” where software developers show their independently derived estimates (their “poker” cards) at the same time, seems to be particularly useful in ...

Read More Source

September 2nd, 2014

In Business

No Comments

The frustrations of Twitter

This is smart and sad:

We concede that there is some value to Twitter, but the social musing we did early on no longer fits. My feed (full of people I admire) is mostly just a loud, stupid, sad place. Basically: a mirror to the world we made that I don’t want to look into. The common way to refute my complaint is to say that I’m following the wrong people. I think I’m following the right people, I’m just seeing ...

Read More Source

September 2nd, 2014

In Philosophy

No Comments

Your 9 year old can use guns but can’t play in a park

Very sad:

It’s just the sad state of affairs in which we find ourselves, after a 9-year-old New Jersey girl accidentally shot and killed her instructor at a firing range in Arizona. The girl’s parents paid for her to fire a fully automatic machine gun, but she lost control of the weapon and shot her instructor, Charles Vacca, killing the military veteran.

The chilling ordeal was caught on tape, courtesy of the girl’s parents, but Arizona police officials have said no charges ...

Read More Source

August 30th, 2014

In Philosophy

No Comments

Big Data solves cancer

Interesting:

IN MAY last year, a supercomputer in San Jose, California, read 100,000 research papers in 2 hours. It found completely new biology hidden in the data. Called KnIT, the computer is one of a handful of systems pushing back the frontiers of knowledge without human help.

KnIT didn’t read the papers like a scientist – that would have taken a lifetime. Instead, it scanned for information on a protein called p53, and a class of enzymes that can interact with it, ...

Read More Source

August 30th, 2014

In Philosophy

No Comments

Independent women under Communism

Interesting:

The East German woman had a job, was economically independent, self-confident, and divorce-happy; at a time when only 50 percent of West German women made their own money, 90 percent of women in East Germany were employed.

…the East German woman didn’t consider her male partner an enemy but rather a partner who, economically speaking, had little or nothig on her. Indeed, the average East German man, unless he had managed to gin a foothold in the regime’s upper ...

Read More Source

August 30th, 2014

In Philosophy

No Comments

The end of the quiet era

Interesting:

Having flipped the global chessboard with his annexation of the Crimea and an undeclared war against Ukraine, Putin effectively ended the most recent period of interregnum and inaugurated a new era in global politics. However, no one yet knows what this era will bring. The global community is still reeling in shock, when it isn’t trying to pretend that nothing extraordinary has in fact occurred. This denial of the fact that the Kremlin has dealt a blow to conventional ...

Read More Source

August 30th, 2014

In Philosophy

No Comments

American Exceptionalism

Interesting:

I’m not surprised some conservatives are upset about the AP American History test. But I am bemused by the strength of the axiom Stanley Kurtz would oblige us to adopt, to keep things from getting politicized: “America is freer and more democratic than any other nation.” (Although, grant the axiom, and postulates about military strength, and theorem 1 – “[the US is] a model, vindicator, and at times the chief defender of ordered liberty and self-government in the world” – ...

Read More Source

August 30th, 2014

In Technology

No Comments

Parsers in Clojure

The title is “Parsing CSS file with monadic parser in Clojure” but there is a lot here that is educational regarding writing any kind of parser.

This much is readable:

(defn parse [parser input] (parser input))

(defn parse-all [parser input] (->> input (parse parser) (filter #(= “” (second %))) ffirst))

But this will require some study:

;; build parser that always returns given element without ...

Read More Source

August 30th, 2014

In Business

No Comments

Microsoft finally defends its customers against government intrusion

Finally, Microsoft took a stand I can approve of:

Despite a federal court order directing Microsoft to turn overseas-held email data to federal authorities, the software giant said Friday it will continue to withhold that information as it waits for the case to wind through the appeals process. The judge has now ordered both Microsoft and federal prosecutors to advise her how to proceed by next Friday, September 5.

Let there be no doubt that Microsoft’s actions in this controversial case ...

Read More Source

August 30th, 2014

In Business

No Comments

Greedy cable companies try to block municipal broadband

The corruption in American politics is outrageous:

Chattanooga has the largest high-speed internet service in the US, offering customers access to speeds of 1 gigabit per second – about 50 times faster than the US average. The service, provided by municipally owned EPB, has sparked a tech boom in the city and attracted international attention. EPB is now petitioning the FCC to expand its territory. Comcast and others have previously sued unsuccessfully to stop EPB’s fibre optic roll out.

I did a ...

Read More Source

August 30th, 2014

In Philosophy

No Comments

When the ice melts

Frightening predictions of the future from National Geographic:

Source

August 30th, 2014

In Philosophy

No Comments

The anti-patterns of email conversations

This is funny:

Some patterns are very simple. For example, this is the “take it to private email” pattern. This pattern can be thread-killed on sight; if you’re feeling generous, read the last two messages in the thread.

bob +-> Foo fred +-> bob +-> fred +-> bob +-> fred ...
Read More Source

August 30th, 2014

In Technology

No Comments

Apache Commons-IO overwhelms me with options

I sure wish I understood what all this stuff does, because it looks like there are a lot of powerful options here: How do normal people discover the real world use cases of all this stuff?

Class Summary AutoCloseInputStream Proxy stream that closes and discards the underlying stream as soon as the end of input has been reached or when ...

Read More Source

August 29th, 2014

In Technology

No Comments

Ribol is a restart library for Clojure

I am impressed with the look of Ribol, though I have not yet used it:

ribol provides a conditional restart system. It can be thought of as an issue resolution system or try++/catch++. We use the term issues to differentiate them from exceptions. The difference is purely semantic: issues are managed whilst exceptions are caught. They all refer to abnormal program flow.

Restart systems are somewhat analogous to a management structure. A low level function will do work until it encounter an ...

Read More Source

August 29th, 2014

In Philosophy

No Comments

Does the Universe have any concept of scale?

Interesting:

Though galaxies look larger than atoms and elephants appear to outweigh ants, some physicists have begun to suspect that size differences are illusory. Perhaps the fundamental description of the universe does not include the concepts of “mass” and “length,” implying that at its core, nature lacks a sense of scale.

This little-explored idea, known as scale symmetry, constitutes a radical departure from long-standing assumptions about how elementary particles acquire their properties. But it has recently emerged as a common theme of ...

Read More Source

August 29th, 2014

In Technology

No Comments

repl-friendly development workflow

First I saw this question in the Github issues for Sente:

Could you recommend a workflow that works across REPL re-evaluations? My current solution is wrapping the initialization in a defonce:

(defonce sente-init (do (let [{:keys [ch-recv send-fn ajax-post-fn ajax-get-or-ws-handshake-fn connected-uids]} (sente/make-channel-socket! {})] (def ...

Read More Source

August 29th, 2014

In Technology

No Comments

The 5 types of dependency injection in Clojure

Interesting:

Globally Shared

This is often the first way developers think to share data across an application: simply throw it in a def in a namespace and allow any function that needs it to reference it from there.

….It has the advantage of being simple to implement. The disadvantages are numerous and Dependency Injection was originally developed to overcome the shortcoming of globally shared data. Among other things, putting the context in a globally shared data structure will ...

Read More Source

August 29th, 2014

In Technology

No Comments

Thread binding in Clojure is tricky

Very interesting. Apparently you can not use pmap in this example:

user=> (def *foo* 5)

#’user/*foo*

user=> (defn adder [param] (+ *foo* param))

#’user/adder user=> (binding [*foo* 10] (doseq [v (pmap adder (repeat 3 5))] (println v))) 10 10 10 nil

*foo* is bound to 10 by “binding” but pmap spins up other threads, and *foo* ...

Read More Source

August 29th, 2014

In Business

No Comments

What if I totally misunderstood?

“What if I totally misunderstood?” seems to be the universal question women ask when guys engage in minor sexual harassment of them.

When Jessica Livingston, a co-founder of the influential startup accelerator Y Combinator, arrived at The Wine Room in Palo Alto, Calif., a little early for our meeting, a man who was also waiting outside the wine bar started to chat her up.

He asked what she was doing there all on her own, and whether she was there maybe ...

Read More Source

August 29th, 2014

In Technology

No Comments

Open Source still lives

Funny:

Source

August 27th, 2014

In Philosophy

No Comments

The bugs on your face evolved to live there

Interesting:

Here is what we do know: Demodex mites are microscopic arachnids (relatives of spiders and ticks) that live in and on the skin of mammals – including humans. They have been found on every mammal species where we’ve looked for them, except the platypus and their odd egg-laying relatives.

Often mammals appear to host more than one species, with some poor field mouse species housing four mite species on its face alone. Generally, these mites live out a benign coexistence with ...

Read More Source

August 27th, 2014

In Technology

No Comments

Is there a single answer to the problem of package management?

Interesting:

Why are there so many goddamn package managers? They sprawl across both operating systems (apt, yum, pacman, Homebrew) as well as for programming languages (Bundler, Cabal, Composer, CPAN, CRAN, CTAN, EasyInstall, Go Get, Maven, npm, NuGet, OPAM, PEAR, pip, RubyGems, etc etc etc). “It is a truth universally acknowledged that a programming language must be in want of a package manager.” What is the fatal attraction of package management that makes programming language after programming language jump off this cliff? ...

Read More Source

August 27th, 2014

In Philosophy

No Comments

I am frustrated that Wikipedia hides old version pages from search engines

A few months ago, I read about “gynaikonomos” on Wikipedia and I thought it was an interesting word, with an interesting story behind it, and last night I mentioned it to a friend, who asked me to send them the URL, but now I find the page that talked about gynaikonomos has been erased from Wikipedia. I got to that page from a link on the page about the Plague of Athens.

The link has been erased from the page. ...

Read More Source

August 27th, 2014

In Philosophy

No Comments

9 year old girl, machine guns, killing, accidents, death, for freedom

This is the most American headline ever written:

9-Year-Old Girl Accidentally Kills Her Shooting Instructor With an Uzi

The only thing that could make this headline more American is if she used an M-16 instead of an Uzi. Otherwise, this headline is perfect, it tells you exactly what kind of country the USA is: the kind of country where people think it is important that 9 year olds learn how to use an Uzi. For freedom.

Source

August 27th, 2014

In Technology

No Comments

The growing power and status of Computer Science departments

In academia, statistics is losing ground to computers:

“They [the statistical profession] lost the PR war because they never fought it.”

I assume this is a USA development. In Europe the computer departments have tended to be outgrowths of the math departments.

Recently a number of new terms have arisen, such as data science, Big Data, and analytics, and the popularity of the term machine learning has grown rapidly. To many of us, though, this is just “old wine in new ...

Read More Source

August 27th, 2014

In Technology

No Comments

Problems of package management are sapping productivity for tech workers

It is especially bad on the front end:

The situation with packages and dependency hell today is horrendous, particularly if you work in a highly dynamic environment like web development. I want to illustrate this with a detailed example of something I did just the other day, when I set up the structure for a new single page web application. Bear with me, this is leading up to the point at the end of this post. To build the front-end, I wanted ...

Read More Source

August 27th, 2014

In Technology

No Comments

A single div

This is an interesting use of CSS gradients to draw images

Source

August 27th, 2014

In Technology

No Comments

NixOS as package management?

The end should be the headline:

The last point is huge: I can use Nix to manage my software on both my Linux and OS X machines! I’ll explain how I do that in a future post.

The whole thing sounds interesting:

The main differentiator of NixOS is its package manager, Nix, which stores packages in isolation on a read-only file system. It then makes them available to you by adjusting your environment variables (e.g. your PATH). This way, it can achieve ...

Read More Source

August 26th, 2014

In Technology

No Comments

Why are Emacs packages such a disaster?

Check out this screenshot. Do you see where it says “Build/Failing”? The red icon? This simply does not happen with other open source projects that I use. No other community thinks it is normal to push broken code to master. What is wrong with Emacs packages? Is their an attitude that we hackers should be such amazing hackers that we can fix the broken code in every project that we use?

Source

August 24th, 2014

In Business

No Comments

The amazing success of Bustle

I am angry with myself for ruining my own chances to launch a successful website, and I am amazed that Bustle is doing well. Bryan Goldberg strikes me as absolutely clueless about women’s issues, yet he’s managed to create a site that gets huge traffic from women.

Do you read Bustle, the website best known in “the culture” as the place whose founder, Bryan Goldberg, uses his female employees’ legs as typing desks? No, me neither. Nonetheless, according to recent ...

Read More Source

August 23rd, 2014

In Technology

No Comments

“Just works” versus “I understand it”

This does a lot to explain the difference between folks drawn to PHP and folks drawn to Lisp. Do you want a utility language that allows you to get basic work done, or do you want a language that you can understand? I wrote PHP for years, but in the end, I was frustrated by much of the magic in it, especially in the PHP object oriented stuff. I like Clojure because I can understand the underpinnings of the language ...

Read More Source

August 23rd, 2014

In Business

No Comments

The uncertainty of promised products

Interesting:

Almost a year ago I paid $55 to be an “early backer” of the credit card replacement system, with the promise that I’d be shipped a Coin summer of 2014. As the months went by emails would arrive detailing how Coin worked, how it was made, etc., all with the reminder that soon enough, I’d be receiving my Coin this summer.

Fast forward to this week — everyone who paid to be backer received an email stating that—HOORAY—our Coins would ...

Read More Source

August 22nd, 2014

In Business

No Comments

Oracle takes $240 million for a website, and then fails to build the website

Interesting:

The 126-page lawsuit, filed in Marion County Circuit Court, claims that fraud, lying and “a pattern of racketeering” by Oracle cost the state and its Cover Oregon program hundreds of millions of dollars.

“Not only were Oracle’s claims lies, Oracle’s work was abysmal,” the lawsuit said. Oregon paid Oracle about $240.3 million for a system that never worked, the suit said.

Oracle issued a statement saying the suit “is a desperate attempt to deflect blame from Cover Oregon and the governor for ...

Read More Source

August 21st, 2014

In Technology

No Comments

Representational Value Transfer (REVAT)

Very interesting:

Representational Value Transfer (REVAT) What we need is a RESTful way to disambiguate state and value, so that we can reason about resource URLs. I propose that we use use existing REST semantics for indicating state and adopt a new conventional standard for indicating values:

GET http://api.example.com/values/5690ba7f-f308-4c32-b67c-56f654bbfd83

{ “id”: 12345, “title”: “Apple iPad Air”, “price_usd”: 599.99 } The salient points of a REVAT URL are:

REVAT values are immutable. Values are identified by random UUIDs No coordination is required to uniquely generate them A non ...

Read More Source

August 21st, 2014

In Technology

No Comments

Racket sounds awesome

Very interesting:

I said above that Lisp flat­tery is easy to find. The prob­lem with Lisp flat­tery is that it makes sense only to ex­pe­ri­enced Lisp pro­gram­mers. To oth­ers—es­pe­cially those who are try­ing to de­cide whether to learn and use a Lisp—it just comes across as un­sub­stan­ti­ated hoodoo.

For ex­am­ple, in his es­say How to Be­come a Hacker, Eric Ray­mond says “Lisp is worth learn­ing for … the pro­found en­light­en­ment ex­pe­ri­ence you will have when you fi­nally get it. That ex­pe­ri­ence will ...

Read More Source

August 20th, 2014

In Technology

No Comments

People strongly disagree with me

Interesting. On Hacker News I quoted one of my earlier blog posts:

“There is an important asymmetry between an architecture of small apps and an architecture of The Monolithic CMS. If you have small apps, and decide you want to move to a monolithic CMS, then you must do The Big Rewrite: the exhausting effort of reproducing all of your funtionality so that it is handled by your one, all-consuming CMS. But when you move from the monolithic CMS to an ...

Read More Source

August 20th, 2014

In Philosophy

No Comments

The Lost World of Tarnów

This is a book I would like to get:

The photos are really impressive. Although their photographers are mostly unknown, many of them are worthy counterparts of Menachem Kipnis’, Alter Kacyzne’s or Roman Vishniac’s famous series. This also indicates how many more pictures may still be hiding depicting this world, which only twenty years ago was widely considered to have passed almost without a trace. And the book’s great merit is that, apart from the images, it also helps to ...

Read More Source

August 20th, 2014

In Philosophy

No Comments

Blatant sexual harassment at tech conferences

This is disturbing:

Charming! He made sure to include a link to his About.me profile, a touch that wasn’t lost on Haas. Her story was brought to my attention by two other women in the east coast tech community, Amy Vernon and Allyson Kapin, who wished to go on the record and spread Haas’ story. Haas, on her end, had shared a couple of posts about the experience with women she’s close with, but hadn’t gone fully public with the experience ...

Read More Source

August 20th, 2014

In Philosophy

No Comments

Strict parenting in Roman times

Augustus was willing to banish his own daughter:

Lex Iulia de Maritandis Ordinibus (18 BC): Limiting marriage across social class boundaries (and thus seen as an indirect foundation of concubinage, later regulated by Justinian, see also below). Lex Iulia de Adulteriis Coercendis (17 BC): This law punished adultery with banishment.[1] The two guilty parties were sent to different islands (“dummodo in diversas insulas relegentur”), and part of their property was confiscated.[1] Fathers were permitted to kill daughters and their partners in ...

Read More Source

August 20th, 2014

In Technology

No Comments

The S does not stand for Simple

Interesting:

REST is a vast improvement over complex things like SOAP and CORBA, but I think we still have a way to go before we’ve reached simple. REST is an acronym for REpresentational State Transfer, and I think the “state” part of that acronym gives rise to a lot of incidental complexity as systems grow.

You can think of state as a combination of value and time, and in the RESTful case, the time dimension is almost always “now”. The trouble ...

Read More Source

August 19th, 2014

In Technology

No Comments

Fixing Bad Data in Datomic

I am intrigued:

A Motivating Example

ACME Co. buys, sells, and processes things. Unfortunately, their circa-2003 web interface is not a shining example of UI/UX design. Befuddled by all the modal screens, managers regularly put bad data into the system.

In fact, manager Steve just accidentally created an inventory record showing that ACME now has 999 Tribbles. This is ridiculous, since everyone knows that the CEO refuses to deal in Tribbles, citing “a bad experience”. In a rather excited voice, ...

Read More Source

August 19th, 2014

In Philosophy

No Comments

Police intimidation of journalists is a political statement

Interesting and disturbing:

On Sunday night, three days after citizens of Ferguson marched alongside Missouri Highway Patrol Captain Ron Johnson, in gratitude for Johnson taking over the heavy-handed police presence, and mere hours after Johnson gave an emotional speech apologizing for the police violence and promising its end, the savior of Ferguson ordered three journalists arrested for witnessing an apparently unprompted police crackdown on protesters.

Shortly after police in Ferguson lobbed tear gas and fired high-tech noise cannons at protesters, three reporters ...

Read More Source

August 19th, 2014

In Philosophy

No Comments

Police want too much discretion

Interesting:. Cop says we should do whatever a cop says:

Even though it might sound harsh and impolitic, here is the bottom line: if you don’t want to get shot, tased, pepper-sprayed, struck with a baton or thrown to the ground, just do what I tell you. Don’t argue with me, don’t call me names, don’t tell me that I can’t stop you, don’t say I’m a racist pig, don’t threaten that you’ll sue me and take away my badge. Don’t ...

Read More Source

August 19th, 2014

In Philosophy

No Comments

Women’s soccer is violent

I’ve seen violence in women’s soccer that would never be allowed in men’s soccer. I wonder if there is a cultural bias here, thinking that girls are made of sugar and spice and everything nice, and so they can’t really be violent? It’s worth noting that at least a 25% of female athletes have levels of testosterone higher than the average male, so they’ve got plenty of hormone for aggression. Check this out:

Source

August 19th, 2014

In Business

No Comments

Editors are worthless, and middle managers are also worthless

I love this:

Go find a story published a few years ago in The New Yorker, perhaps America’s most tightly edited magazine. Give that story to an editor, and tell him it’s a draft. I guarantee you that that editor will take that story—well-polished diamond that it presumably is—and suggest a host of changes. Rewrite the story to the specifications of the new editor. Then take it to another editor, and repeat the process. You will find, once again, that the ...

Read More Source

August 17th, 2014

In Philosophy

No Comments

Living organisms communicate with RNA

I’ve read several articles over the years suggesting that RNA is used as a tool of communication. I have the sense that this is something huge, that this is going to change the world. If RNA can be used as a general communication tool, not only as cypher, with a limited set of symbols whose meanings are pre-determined, but in a manner that allows new meanings to be created by different arrangements, then that suggests that RNA encodes a notation ...

Read More Source

August 17th, 2014

In Philosophy

No Comments

Heterosexuals do not understand bisexuality

Funny and interesting:

It was not jealousy I felt, not in the least. It was exclusion. Invisibility. Irrelevance. What did she mean? What had Stephanie said? What the hell was this? To make matters worse, when we got home that night Stephanie passed out in the elevator and, annoyed, I carried her into my apartment and put her to bed on the coffee table. I figured in the morning she’d forget the whole thing, and, should she need a female fix ...

Read More Source

August 17th, 2014

In Philosophy

No Comments

Unboxing mania

Interesting:

And so, the concerned parent researches. It didn’t take long to learn that DisneyCollector is actually working within an enormous growing culture for opening newly purchased items on camera. According to data from Social Blade, a YouTube data-analysis site, DisneyCollector could be raking in between $2 million and $13 million a year in advertising. She is very likely the most successful auteur of unboxing videos, a type of clip — part Consumer Reports and part Christmas morning — that has ...

Read More Source

August 17th, 2014

In Technology

No Comments

Security problems with OpenSIS

OpenSIS tells me that a password is “invalid” because another user is already using it. This is in the admin view, so I guess the assumption is that the admin can know if a password is being used more than once, but this still strikes me a security violation. See the bottom of the screenshot:

Source

August 12th, 2014

In Philosophy

No Comments

Gender, romance and looking desperate

Interesting story:

It’s a perfectly sweet boy-and-girl-meet-cute story. Moreau had been in Spain for a few months traveling and she was happy to be sitting next to an English speaker, she said. Kelly was immediately smitten. For whatever reason, they did not exchange phone numbers on the flight, perhaps because they expected to keep chatting after customs.

Dude really put in the work to find her, too:

He asked the airline for information on his seatmate, but for privacy reasons, they couldn’t help. ...

Read More Source

August 11th, 2014

In Business

No Comments

How to handle comments at a media site

Very surprising post from the staff at Jezebel:

Working at Gawker Media is a dream job for many of the women on staff here at Jezebel. This is a place that takes chances on developing writers, that has always stood behind us no matter what. But it’s time the company had its feet held to the fire.

For months, an individual or individuals has been using anonymous, untraceable burner accounts to post gifs of violent pornography in the discussion section of stories ...

Read More Source

August 7th, 2014

In Technology

No Comments

Event Tracing for Windows is a truly terrible API

I found this to be funny:

Blog Bio The Technician No Imperfections Noted The Jeff and Casey Show Jeff and Casey TimeCasey Muratori Seattle, WA The Worst API Ever Made A call-by-call look at context switch logging with the Event Tracing for Windows API.This article is part of a series where a new short-form tech article is posted every Wednesday. You can always check the contents page for the latest installment, or follow me on Twitter for updates. You can also RSS ...

Read More Source

August 6th, 2014

In Technology

No Comments

The explosion of sysadmin configuration complexity

Somewhat off-topic, but it is amazing to think about the complexity of the server setup that is implied by this:

First, let me start by explaining why we decided to port away from Puppet: We had a complex puppet code base that has around 10,000 lines of actual Puppet code. This code was originally spaghetti-code oriented and in the past year or so was being converted to a new pattern that used Hiera and Puppet modules split up into services ...

Read More Source

August 6th, 2014

In Philosophy

No Comments

What if your husband is secretly an abusive online troll?

A woman discovers her husband’s secret online life:

He left the browser open on our laptop after he went to work this morning. I go to work after, so I usually hop on and do my own things on my real account….I was disgusted at what I found. My husband is a troll. A really fucking nasty troll. He leaves horribly mean comments to all kinds of people. They’re filled with racist slurs, awful insults, he tears into fat people, ugly ...

Read More Source

August 6th, 2014

In Philosophy

No Comments

Pandering and popularity

Interesting:

I grew up on the wrong side of the tracks in a crappy town in the middle of nowhere and like anyone who lives in rural America, social relationships are nothing if not an intensely interlocked microcosm of social jockeying. I had a pack of friends and when times were good, we’d have slumber parties in the tent of our front yard, play stiff as a board and light as a feather and listen to the GoGos and the Human ...

Read More Source

August 6th, 2014

In Philosophy

No Comments

Life online allows people to hate strangers

An interesting side effect of moving one’s social life online is that now it is possible for people on the other side of the world (people who in another era would have never known of your existence) can now hate you, because they don’t like what they read or hear about you. I think we know this in the abstract, but the specific cases are always surprising and sad to read about. In this case a bunch of women were ...

Read More Source

August 5th, 2014

In Technology

No Comments

Clojure core.async is just a bunch of callbacks

Interesting to note that the beautifully elegant core.async is secretly the same as the “callback hell” of Javascript — except that core.async automates it all for you, which is a huge difference.

core.async is a Clojure library implementing communication sequential processes, an approach that allows code to be structured as producers and consumers of messages passed through channels. CSPs are an approach to dealing with concurrent activity in a program, and exists as a strong alternative to the kind of ...

Read More Source

August 5th, 2014

In Technology

No Comments

Just write SQL

I’ve been on both sides of this debate, but mostly I write SQL, mostly because the limits of ORMs tend to be immediate and stifling.

ORMs map nicely when you are indeed modifying objects, but somethings don’t map well that way. So don’t map them that way! What we need is a low level abstraction layer alongside the ORM. The main problem with raw SQL is that what you really want is a genuine programming language. You almost want programmatic access to ...

Read More Source

August 5th, 2014

In Technology

No Comments

Visual Markov Chains

This is well done, the animation of the Markov chains makes the real-world impact of the probabilities more understandable.

Source

August 5th, 2014

In Philosophy

No Comments

Mental performance in men and women, improvements linked to national development

Interesting

That performance was determined using tests for episodic memory (the retention of words in memory), category fluency (naming examples of, say, animals) and numeracy. Women are expected to outperform men in episodic memory and men do better in numeracy. Neither sex is thought dominant in category fluency.

Episodic memory matters because it is linked to emotion. The brain remembers unconnected words by linking them to a memory or imagined situation. It is the emotion of the memory that supposedly helps the ...

Read More Source

August 5th, 2014

In Technology

No Comments

Multimethods in Clojure

I’ve only recently discovered multimethods, but now I’ve come round to the idea that one should never use (cond) in Clojure. Rather, any time you have a complicated nexted (ifs) or a big (cond) it should all be replaced by multimethods:

A Clojure multimethods is a combination of a dispatch function and one or more methods, each defining its own dispatch value. The dispatching function is called first, and returns a dispatch value. This value is then matched to the correct ...

Read More Source

August 5th, 2014

In Business

No Comments

Are in-app purchases uniquely destructive to personal finance?

Interesting argument:

Adults with a loose claim to self-sufficiency can still recite the cost of their monthly rent, their cable bill, student loan bills, smartphone bill, auto insurance, the seasonal range of electricity consumption, annual penalty for breeding, etc. When charges are deducted automatically, the numbers get fuzzier. For the spendthrift, monthly expenditures on food, drink, travel, and clothing are more nebulous still. But impulse-driven, one-press smartphone purchases are the easiest to lose track of, which makes apps even worse enablers ...

Read More Source

August 5th, 2014

In Business

No Comments

(NSFW) Is Whisper really respecting people’s privacy?

Gawker Media gets data straight from Whisper:

Uber and Lyft are doing everything they can to recruit new drivers. There’s cash and perks and a bevy of enticing benefits, but for whatever reason they’re not mentioning the massive amount of spontaneous sex drivers are having with riders. …If you’re thinking this is all just an elaborate hoax by a spate of sexually frustrated Whisper users, we did too – and then we talked to the company. Whisper was able to weed ...

Read More Source

August 5th, 2014

In Business

No Comments

The need to check PayPal

Something I need to do, that I’ve wanted to do for awhile, is add more checks to my payments systems.

You can make an API call to check the status of a transaction very easily. When my users are redirected back to my site (thanks page, or similar), I check if their transaction is completed, if not, I kick off an every-five-seconds check while asking the user to hold on while we talk with paypal. I will eventually fail after some number ...

Read More Source

August 5th, 2014

In Philosophy

No Comments

What makes people attractive to one another?

What makes people attractive to one another? This seems to change over time, depending on what people lack. A hundred years ago, in the USA, it was reasonable to summarize dating advice as “The way to a man’s heart is through his stomach” but that was before the economy had shifted to a service economy, so one could not buy services such as good food, one had to instead rely on women. Nowadays such advice is ridiculous, we get food ...

Read More Source

August 5th, 2014

In Philosophy

No Comments

Will it ever be immoral to have children?

Once upon a time it was considered moral to own slaves. The Bible justifies slavery and says that slaves should be loyal the their masters. Most of the great men of history owned slaves: the Roman Emperors, George Washington, Thomas Jefferson, etc. The practice was universally accepted. Now it is considered deeply immoral to own slaves. This raises the question, are there any other activities that are now universally accepted, and which will someday be regarded as immoral? My first ...

Read More Source

August 5th, 2014

In Technology

No Comments

PHP will never be a happily multi-threaded language

If you want concurrency, then use a language that was designed from the beginning to support concurrency. PHP will never be that language. I’ve said this before, and jerf on Hacker News also says it well:

Adding pervasive threading is a different story. Adding threading to a mutable-state dynamic scripting language has a long and sordid history… even when it is nominally successful (as in Python) it is still not very useful, and at times it has been simply a failure ...

Read More Source

August 5th, 2014

In Philosophy

No Comments

Multi-cellular creatures live on intimate terms with bacteria

There is the large question of why the Cambrian revolution started 540 million years ago. Life apparently began on earth almost 4 billion years ago, so it was around doing not much for 3.5 billion years and then, suddenly, boom, everything changed. But what circumstances built up at a slow pace to allow circumstances to finally move at a fast pace? One imagines a vast language of chemical signals must have been built up, eventually complex enough to allow the ...

Read More Source

August 5th, 2014

In Business

No Comments

If a writers say they are writing a series, is that an implicit contract?

This is incorrect:

You’re complaining about George doing other things than writing the books you want to read as if your buying the first book in the series was a contract with him: that you would pay over your ten dollars, and George for his part would spend every waking hour until the series was done, writing the rest of the books for you. No such contract existed. You were paying your ten dollars for the book you were reading, ...

Read More Source

August 5th, 2014

In Philosophy

No Comments

Kim Kardashian understands how money works

I am afraid of the kind of economy that Kim Kardashian makes her money from, where illusions are profitable but manufacturing physical products is unprofitable. Nevertheless, I recognize that she has a genius for operating in this current environment, and I try to follow her, because I realize that I have a lot to learn from her.

That said, perhaps the woman on the $20 should fit a similar mold — the modern embodiment of how pursuit of success at all ...

Read More Source

August 5th, 2014

In Technology

No Comments

Web apps can be desktop apps if you bundle the web server

It’s an interesting idea, a sort of uberjar idea, in the sense that you bundle all dependencies as one app. You can bundle up all the pieces of a web app and make it a desktop app by including the webserver. Indeed, I do exactly that every time I run “lein uberjar” on one of my Clojure apps (when I embed the Jetty server with my app):

Node is a lightweight JavaScript runtime based on the Google Chrome V8 engine. ...

Read More Source

August 1st, 2014

In Technology

No Comments

Scott Feeney writes about Liberator

This is a very good write-up about Liberator, the Clojure library for RESTful APIs. This example he gives was a revelation to me:

Here’s a longer example, a post on a blogging site. Anyone can read a blog post (with a GET), but only the user who wrote it can edit it (with a PUT) or DELETE it.

(defresource blog-post-resource [id] :allowed-methods [:get :put :delete]

;; Return 503 Service Unavailable if DB is down. :service-available? (fn [_] ...

Read More Source

August 1st, 2014

In Technology

No Comments

Relying on “standard” libraries which may or may not exist on a server

A strange post from ItsMe:

Programs (like not only browsers) are using shared libraries (e.g. glibc provided by the OS). So the dependant library(s) isn’t/ aren’t used by the browser alone.

most unix based OSes have python installed as a standard library (next to perl).

(My RHEL for example depends heavily on python because most of the standard programs that are used are written in python)

So why should be almost 8 MB for a program that reads text be nothing?

Particularly when ...

Read More Source

August 1st, 2014

In Technology

No Comments

The evolution of RESTful APIs

A good post on the importance of the PATCH verb:. This is from the Rails community, but I think all communities have adopted this. Lord knows Rails did a great deal to shape modern ideas about APIs.

What is PATCH? The HTTP method PUT means resource creation or replacement at some given URL.

Think files, for example. If you upload a file to S3 at some URL, you want either to create the file at that URL or replace an existing file if ...

Read More Source

July 28th, 2014

In Philosophy

No Comments

OKCupid experiments on its users again

Manipulations done by OKCupid. Remember, if a service is free, then you are the product.

But by comparing Love Is Blind Day to a normal Tuesday, we learned some very interesting things. In those 7 hours without photos… And it wasn’t that “looks weren’t important” to the users who’d chosen to stick around. When the photos were restored at 4PM, 2,200 people were in the middle of conversations that had started “blind”. Those conversations melted away. The goodness was gone, ...

Read More Source

July 28th, 2014

In Technology

No Comments

When should a program interpret words?

This is very good:

Consider the following “program” in English prose:

Assume that your favorite color is red. Now imagine a balloon that is your favorite color. Paint a canvas the same color as the balloon. As English goes, that’s a fairly clear program with a fairly well-defined result. When I follow those instructions, at least, I will always produce a red canvas (assuming that I have a canvas and some red paint, but a potential lack of art supplies is not the ...

Read More Source

July 28th, 2014

In Technology

No Comments

Rate limiting middleware for Clojure Ring

It is impressive how much the Clojure eco-system is catching up with Ruby On Rails. The middleware available for Ring is now very extensive. I just discovered Rate limiting middleware for Clojure Ring. Seeing as I just built an API with Liberator, this middleware could be very useful.

Source

July 28th, 2014

In Technology

No Comments

Organizing Emacs

This looks like a good article on simple and practical configs for Emacs. I hope to get a new Mac soon, and then re-install Emacs, and then re-configure it based on all I know now. My initial setup of Emacs was confusing since I was overwhelmed by the complexity of Emacs, and I was in a hurry to get stuff done.

Source

July 28th, 2014

In Philosophy

No Comments

Why is the solar system stable?

I am fascinated with the question of smart people thinking dumb things. Or rather, things that now strike me as stupid, partly because I grew up knowing the answer.

One of the smartest people who ever lived was Isaac Newton. And for a long time, he was convinced that the sun had a repulsive force that was pushing the planets away. Robert Hooke had to expend considerable effort to convince Newton that the sun had an attractive force. And then, ...

Read More Source

July 28th, 2014

In Technology

No Comments

The Cambrian explosion of Javascript innovation

I am not working with Javascript, so part of me wants to ignore it, but, to be honest, the things now happening in the land of Javascript are amazing. Consider Racer:

Racer is a realtime model synchronization engine for Node.js. By leveraging ShareJS, multiple users can interact with the same data in realtime via Operational Transformation, a sophisticated conflict resolution algorithm that works in realtime and with offline clients. ShareJS also supports PubSub across multiple servers for horizontal scaling. Clients can ...

Read More Source

July 28th, 2014

In Philosophy

No Comments

Why a woman becomes a social worker

A powerful story about why one woman wanted to become a social worker:

She’s a pacifist, she doesn’t believe in killing or maiming. Hitting either, I suppose.

“Not even to save a life?” I ask.

“Only if it was very clear-cut.”

“What if you knew of a person who had tortured and killed several women, and you had the ability to stop them?”

“I would call the police,” she says.

Fuck, if only I could be that innocent, to think I could just call the cops ...

Read More Source

July 27th, 2014

In Technology

No Comments

Understanding Ring Middleware

I am very, very stupid. Despite the great post by Darren Holloway, I was still wondering when you get the request and when do you get the response in a Ring Middleware.

Ryan Evans offers this simple middleware as an example:

(defn my-middleware [app] (fn [request] ;; This is where you’d do any processing on the request ;; Finally, keep the chain going by calling app (app request)))

The ...

Read More Source

July 26th, 2014

In Technology

No Comments

TJ Holowaychuk leaves NodeJS for Go

TJ Holowaychuk built out some of the most important nmp modules for NodeJS, but now he is leaving for Go.

Go versus Node

If you’re doing distributed work then you’ll find Go’s expressive concurrency primitives very helpful. We could achieve similar things in Node with generators, but in my opinion generators will only ever get us half way there. Without separate stacks error handling & reporting will be mediocre at best. I also don’t want to wait 3 years for the ...

Read More Source

July 26th, 2014

In Technology

No Comments

Changing leadership of NodeJS

More than most projects, it seems like Node.js has seen a lot of churn in its leadership.

January 2012:

Citing a desire to work on research projects after three years of focused work, Node.js creator and project leader Ryan Dahl sent out a message today that he will be “ceding my position as gatekeeper to Isaac Schlueter”. He stated:

I am still an employee at Joyent and will advise from the sidelines but I won’t be involved in the day-to-day bug fixes. ...

Read More Source

July 26th, 2014

In Philosophy

No Comments

The Perseus Cluster is huge and strange

Interesting:

Together with a team of more than a half-dozen colleagues, Bulbul has been using Chandra to explore the Perseus Cluster, a swarm of galaxies approximately 250 million light years from Earth. Imagine a cloud of gas in which each atom is a whole galaxy—that’s a bit what the Perseus cluster is like. It is one of the most massive known objects in the Universe. The cluster itself is immersed in an enormous ‘atmosphere’ of superheated plasma—and it is ...

Read More Source

July 26th, 2014

In Technology

No Comments

Adding real continuous loop behavior to Clojure apps

Interesting:

A while loop that is always true will continue to run until terminated, but it’s not really the cleanest way to obtain the result as it doesn’t allow for a clean shutdown. We can use a scheduled thread pool that will start and execute the desired command in a similar fashion as the while loop, but with a much greater level of control. Create a file in the src directory called scheduler.clj and enter the following code:

(ns pinger.scheduler ...

Read More Source

July 26th, 2014

In Business

No Comments

How to ruin a company

Interesting:

Our sales were growing so fast that the biggest problem that we faced was that we literally could not handle all the customers that wanted to sign up for Loudcloud. To combat this and enable us to grow, I worked diligently with my team to plan all the activities that we needed to accomplish to expand our capacity and capture the market before the competition. Next, I assigned sub-goals and activities to each functional head. In conjunction with my leadership ...

Read More Source

July 22nd, 2014

In Technology

No Comments

The problems of object oriented programming and strict typing

This is good, though too specific to Java:

The biggest problem I’ve encountered over the years looking at Java code is that it always seems to be the product of someone who fancies themselves as an architect. They must, because so often I find I’m reading code that looks more like a plan for something that solves a problem, rather than something that actually solves a problem. It’s not a subtle distinction. There are deep layers of abstraction and mountains of ...

Read More Source

July 22nd, 2014

In Technology

No Comments

How much can a developer possibly know?

The amount that programmers need to know is growing, so experienced programmers end up facing situations like the one described here by Tim Bray:

Where I’m stuck · I have a tab open to a page in the Gra­dle doc­s: Chap­ter 50. Depen­den­cy Man­age­ment. It has 63 header-delimited sec­tions or­ga­nized in­to 10 top-level sub­sec­tion­s, and it’s chap­ter 50 of 65 (plus five ap­pen­dices). ¶ Short sto­ry: I’m get­ting an in­com­pre­hen­si­ble Groovy er­ror try­ing to do some­thing that should be sim­ple, and fol­low­ing ...

Read More Source

July 21st, 2014

In Technology

No Comments

Pretty-print JSON from Clojure

Interesting:

What’s next? Oh, pretty-printing. Yeah, I pretty-print my JSON to go over the wire. It’s nice for debugging. I mean, who wants to curl one long, 1000-character line of JSON? Put some whitespace, please! How to do that?

(cheshire.core/generate-string mp {:pretty true}) That’s right, it’s basically built in, but you have to specify it. But, oh man, that’s long. I don’t want to type that, especially because my lazy fingers are going to not do it one time, then I’m going ...

Read More Source

July 21st, 2014

In Philosophy

No Comments

Learning a new language boosts your memory

Interesting:

In the last few years, unable to hold a list of just four grocery items in my head, I’d begun to fret a bit over my literal state of mind. So to reassure myself that nothing was amiss, just before tackling French I took a cognitive assessment called CNS Vital Signs, recommended by a psychologist friend. The results were anything but reassuring: I scored below average for my age group in nearly all of the categories, notably landing in the ...

Read More Source

July 21st, 2014

In Technology

No Comments

PrettyPrinting for test results

An interesting test style:

If the expression passed to is an S-expr, and the first element of the is recognized as a function. Then is prints that first symbol directly, then evaluates all the arguments to the function and prints the results. For instance:

expected: (function-name (arg1) (arg2)) actual: (not (function-name “1st arg value” “2nd arg value”))

However, if is does not recognize that first element as a function, the whole expression passed to is is evaluated for the actual, and you get:

expected: (something-that-evaluates-to-bool ...

Read More Source

July 21st, 2014

In Technology

No Comments

Why is uberjar such a rare option?

I find this very surprising. My first serious exposure to the JVM was via Clojure, which has the awesome Leinengen build tool, which has an uberjar option. Therefore I thought uberjar was common on the JVM. But no. Now that I am working with Java, I find that it is rare for anyone to put jars inside of jars:

You can add jars to the jar’s classpath, but they must be co-located, not contained in the main jar.

That was in 2008, ...

Read More Source

July 20th, 2014

In Technology

No Comments

Buildr as a continuous integration tool?

Interesting to read an old post from 2008 in which Liz Douglas stretch Buildr to the point that it becomes almost a continuous integration tool:

A few months ago the idea of myself writing such words (“Things I like about Buildr“) seemed very unlikely and I dare say that my project buddies may be surprised at the statement. Buildr, for those unfamiliar, is a build tool for Java applications that is written in Ruby. It’s key benefit is its concise ...

Read More Source

July 20th, 2014

In Philosophy

No Comments

Shame and politics

During the 4 years that I was sick, 1995-1999, my personal politics swung sharply to the right. I’ve always had trouble describing why. However, this essay does a good job describing many of the emotions involved. Very interesting:

Even though we didn’t take the food stamps, we lived in the warm embrace of the federal government with subsidized housing and utilities, courtesy of Uncle Sam [Lyngar, at the time, was in the Army]. Yet I blamed all of my considerable problems ...

Read More Source

July 20th, 2014

In Technology

No Comments

Should project packaging/building be complicated?

Working with Java for the first time in 10 years. Using Buildr as my build tool. I have a certain admiration for Buildr and all that it allows:

Here’s another example:

jjtree = jjtree(_(‘src/main/jjtree’), :in_package=>’com.acme’) compile.from javacc(jjtree, :in_package=>’com.acme’), jjtree

This time, the variable jjtree is a file task that reads a JJTree source file from the src/main/jjtree directory, and generates additional source files in the target/generated/jjtree directory. The second line creates another file task that takes those source files, runs JavaCC on them, and ...

Read More Source

July 20th, 2014

In Technology

No Comments

Clojure encourages small functions

This is very true:

I have only two small Clojure projects, and other than writing tools on which nothing major depends, these projects will probably be the only ones in my current position. The rest will be done in Web languages and Perl. So, I enjoy a chance to enhance the Clojure projects.

I do not know why, and am not aware of any conscious prejudice, but writing Clojure code encourages me to create small functions, and external Clojure projects, like ...

Read More Source

July 19th, 2014

In Technology

No Comments

The difference between strict static typing and design-by-contract

When I write Clojure, I write pre and post assertions, following the pattern known as “design by contract”:

(defn fetch [ctx] {:pre [ (map? ctx) (string? (:database-query-to-call ctx)) (map? (:database-where-clause-map ctx)) ] :post [(future? %)]} “2014-07-01 – first we check the cache. If we get ...

Read More Source

July 18th, 2014

In Technology

No Comments

Classpath hell in Java

I rarely work in Java, and every time I recall what a pain it is to figure out the classpath. I finally set my classpath in the manifest to something hardcoded:

Main-Class: com/company/Main Class-Path: /Users/lkrubner/projects/launchopen/lofdg/target/

and at the terminal I compile my “.class” files in the same directory as the “.java” files:

javac src/com/company/*.java

Then I move them:

mv src/com/company/*.class target/com/company/

Then I create my jar file:

jar vcfm fakeDataGeneratror.jar manifest.txt target/com/company/*

which I call:

java -jar fakeDataGeneratror.jar

There are some important text files that ...

Read More Source

July 2nd, 2014

In Technology

No Comments

Testing RESTful APIs with cURL

This is great:

I believe it’s just as easy, for basic operations, to use CURL as you are likely to be in a terminal window anyway at such an early stage in development. For this reason, I thought I’d cover using CURL for the 4 basic RESTful methods (GET, POST, PUT and DELETE).

The following assumes you already have an application with a RESTful endpoint of ‘users’:

GET – This will get all users in our application.

1 curl http://www.mydemoapp.com/users POST – Here we are posting ...

Read More Source

July 2nd, 2014

In Technology

No Comments

Why would a sane programmer use PHP rather than Clojure for a RESTful API?

This question on StackOverflow seems a bit sad:

I did look at both Laravel, Sympfony2 and Codeigniter for this REST Api. They all had some elements I liked and some I disliked. My main concern was how to do the authentication because I had a rather complex algorithm where my users can log in with the apps’ access_token or access_tokens served by Google or Facebook. I also perfer being in complete control of my framework and the frameworks mentioned above had ...

Read More Source

June 30th, 2014

In Technology

No Comments

mongodump and mongorestore

This is a good overview for using mongodump and mongorestore:

Once you’ve taken the backup of a MongoDB database using mongodump, you can restore it using mongorestore command. In case of an disaster where you lost your mongoDB database, you can use this command to restore the database. Or, you can just use this command to restore the database on a different server for testing purpose.

1. Restore All Database without Mongod Instance

If you’ve taken a backup without mongod instance, use this ...

Read More Source

June 29th, 2014

In Technology

No Comments

Waste my screen like it’s 1996

A lot of the screen space here is fixed and does not scroll. Reminds me of frames circa 1996.

Source

June 28th, 2014

In Technology

No Comments

A simple regex rule

Don’t ever use this:

.*

instead use this:

.*?

Why? Because the first one is greedy and will almost always match too much.

This is a nice example:

Most people new to regular expressions will attempt to use . They will be surprised when they test it on a string like This is a first test. You might expect the regex to match and when continuing after that match, .

But it does not. The regex will match first. Obviously not what we ...

Read More Source

June 28th, 2014

In Technology

No Comments

Unix and C are the ultimate computer viruses

This is a very good take on “worse is better”. This also bears on the micro-services debate. Simple implementation allowed Unix to become the world’s favorite operating system. Is there redundant code in a Unix distro? Sure, you’ve got a lot of utilities that all have code for reading files. But if, instead of a bunch of small utilities, you tried to build the one ultimate tool that does everything (the monolithic framework) you would never get anything like the ...

Read More Source

June 27th, 2014

In Business

No Comments

E-books are more and more popular

I have a novel I’d like to publish, so e-books are interesting to me. Apparently it is really easy to publish them through Amazon, and Amazon let’s you keep 70% of the money, which seems like a good deal.

The state of the book is in constant danger. The novel is constantly dying, and there is a fear that the publishing industry in general is maybe doomed. But if there’s one sector of the publishing industry that’s alive and well, ...

Read More Source

June 27th, 2014

In Technology

No Comments

The cost of small apps

Micro services become popular:

Though they aren’t a particularly new idea, Microservices seem to have exploded in popularity this year, with articles, conference tracks, and Twitter streams waxing lyrical about the benefits of building software systems in this style.

I previously wrote about my preference for an architecture of small apps. But it is worth noting, this approach has its downside:

Where a monolithic application might have been deployed to a small application server cluster, you now have tens of separate services ...

Read More Source

June 27th, 2014

In Technology

No Comments

Maybe Unicorn works for Ruby

Since I said so many bad things about Unicorn, it is only fair that I also link to this piece that makes Unicorn sound good:

Unicorn was faster than Passenger or Thin with /borat and had the second highest transaction rate for the same. It had the shortest duration of both longest and shortest transaction with /borat as well. It was one of only two that actually finished the /pi test, and did so faster than Thin. Unicorn had the highest ...

Read More Source

June 27th, 2014

In Business

No Comments

Do Catfish viewers get catfished?

This story has an ending that seems a little too good to be true. One has to wonder if the viewers of Catfish are some catfished by the producers?

Let’s pause here and note that Gabby’s family won’t allow her to meet Nev and Max in person, but they’re fine with her signing a release to Skype on camera with MTV? OK.

Gabby doesn’t identify as bisexual or as a lesbian but she admits that her interest in Miranda is not ...

Read More Source

June 26th, 2014

In Technology

No Comments

Regular expressions: greedy and lazy matching

This is a great tutorial on regular expressions:

As you’ve seen, a greedy quantifier will try to match as much as it possibly can and only give back matched characters as needed. Every time the engine greedily consumes one more character (or repeated token in general), it has to remember that it made that choice. It will therefore persist its current state and store it so it can come back to it later in a process we call backtracking. When ...

Read More Source

June 26th, 2014

In Business

No Comments

Jeff Bezos is putting more money into the Washington Post

Interesting:

At the time of the sale to Bezos, Donald Graham, Weymouth’s uncle and the chairman of The Washington Post Company, explained that he and his niece felt unsure of the direction in which to take the paper, or how to reverse years of declining revenues. He had approached Bezos as a buyer, he said, because the billionaire could offer deep pockets, a digital brain, and, between the two, a way forward.

Now a Bezos employee, Weymouth’s task onstage that April day ...

Read More Source

June 26th, 2014

In Business

No Comments

Amazon’s growing power over the publishing industry

Amazon.com started in 1995. At the time, it was a tiny startup. But it now has the power to destroy hundreds of companies that have existed since the 1800s. How is that those venerable firms, with their wealth and connections and political power and their capital, have not been able to build something to compete with Amazon? They have now had 19 years to respond to Amazon, and they have failed to respond for 19 years. Why?

According to book industry ...

Read More Source

June 26th, 2014

In Philosophy

No Comments

What allows a marriage to last?

Interesting:

Gottman wanted to know more about how the masters created that culture of love and intimacy, and how the disasters squashed it. In a follow-up study in 1990, he designed a lab on the University of Washington campus to look like a beautiful bed and breakfast retreat. He invited 130 newlywed couples to spend the day at this retreat and watched them as they did what couples normally do on vacation: cook, clean, listen to music, eat, chat, and hang ...

Read More Source

June 24th, 2014

In Technology

No Comments

Is the FizzBuzz test really hard?

I have been a fan of John Lawrence Aspden for several years now, but this post on FizzBuzz is especially good, both funny and illustrative of what I think is a common work process in Clojure:

;; I decided to use pull it out your ass driven development, where ;; you just pull the answer out of your ass.

;; First bit, print out the numbers from 1 to 100 (range 100) ;-> (0 1 2 3 4 5 6 7 8 9 10 ...

Read More Source

June 24th, 2014

In Technology

No Comments

ZFS instead of Git

Interesting:

Using ZFS as a replacement of Git for is probably not a good idea, but just to give you a sense of what ZFS supports at the file system level, let me go through a few typical git-like operations:

Creating a repository

Committing or tagging a version

Branching

Pushing and pulling changes from other storage pools, possibly on other machines

Notably missing is support for merging, which ZFS does not have direct support for as far as I’m aware.

Creating a repository

First, let’s create a filesystem ...

Read More Source

June 24th, 2014

In Technology

No Comments

Managing multiple Future objects in PHP

I have previously said negative things about Joe Watkin’s attempts to facillitate using objects and multiple threads in PHP.

However, here is an approach to Futures in PHP that does seem easy and interesting to me:

Managing Multiple Futures

Commonly, you may have many similar tasks you wish to parallelize: instead of compressing one file, you want to compress several files. You can use the FutureIterator class to manage multiple futures, via the convenience function Futures().

$futures = array(); foreach ($files as $file) ...

Read More Source

June 24th, 2014

In Technology

No Comments

Refactoring fat models

I had a job interview at Bookspan.com.

At first I talked to a guy named Tom. I assumed he was the leader of the tech team, so I talked about my wide experience. He seemed confused by my recent experience with Ruby. He asked if I was a serious PHP programmer? I said a few negative things about PHP, since most corporations are now pulling away from it. PHP is going out of fashion (as you can see in this ...

Read More Source

June 24th, 2014

In Technology

No Comments

Eventual consistency is probably the only consistency that one can hope for using Javascript and WebSockets

On the one hand, I am very impressed with this article: Eventual Consistency in Real-time Web Apps. On the other hand, how can anyone keep up with what is best practice in the land of Javascript, when every week seems to bring a new framework or methodology?

Having said that, I’ll point out that there is no way to ensure a 1-to-1 match between one’s backend model and one’s front-end model, so all one can do is pick one to ...

Read More Source

June 24th, 2014

In Philosophy

No Comments

The emergence of the jaw, in the late Cambrian, was one of the big breakthroughs for life on earth

Interesting:

Fossilized fish specimens from the Canadian Rockies, known as Metaspriggina, dates from the Cambrian period (around 505 million years ago), shows pairs of exceptionally well-preserved arches near the front of its body. The first of these pairs, closest to the head, eventually led to the evolution of jaws in vertebrates, the first time this feature has been seen so early in the fossil record.

Fish fossils from the Cambrian period are very rare and usually poorly preserved. This new discovery ...

Read More Source

June 24th, 2014

In Technology

No Comments

PHP-FPM with Nginx

I already linked to this, but I will link again because, seriously, this is one of the best setup tutorials I’ve seen:

One of the greatest strengths of PHP-FPM is its ability to scale its worker processes up and down as load on the server increases. PHP-FPM can have several “pools” of PHP handlers: one for each different Web application, with different numbers of worker processes and different rules about when to add more processes or kill idle processes.

Our needs ...

Read More Source

June 24th, 2014

In Business

No Comments

Growing discontent with Google?

Google has certainly lost a great deal of the goodwill it once held.

Basically we all knew Google was a company so we shouldn’t be surprised that they went funny. But the change hurt. A company that had previously offered services for the good of their users now started shearing their customers like sheep. I won’t say they fleeced us exactly, because they never exacted any money from us directly, but they started selling us to their advertisers. Someone said, ...

Read More Source

June 24th, 2014

In Business

No Comments

The declining power of the search engines?

Interesting graph:

Source

June 24th, 2014

In Philosophy

No Comments

Ellen Chisa on gender and technology

This is interesting:

I was vehemently against the Society of Women in Engineering (SWE). I thought anything that called attention to being female hurt me. That it would make people think I’d gotten my role for being “female” instead of for being excellent. I felt degraded. I felt like “those women” were making me less likely to succeed. They couldn’t compete on excellence, so they made shit up about how the playing field wasn’t level. They just weren’t good enough. Other ...

Read More Source

June 24th, 2014

In Technology

No Comments

Docker is the future

Something like Docker is probably the future. Clearly, virtual machines is becoming a popular way to manage dependencies. However, Docker still has problems:

Misconception: If I use Docker then I don’t need a configuration management (CM) tool!

This is partially true. You may not need the configuration management as much for your servers with Docker, but you absolutely need an orchestration tool in order to provision, deploy, and manage your servers with Docker running on them.

This is where a tool like ...

Read More Source

June 23rd, 2014

In Business

No Comments

The impact of online advertising can not be measured

Interesting:

It isn’t easy, of course. In 2013, Randall Lewis of Google and Justin Rao of Microsoft released the paper “On the Near Impossibility of Measuring the Returns on Advertising.” In it, they analyzed the results of 25 different field experiments involving digital ad campaigns, most of which reached more than 1 million unique viewers. The gist: Consumer behavior is so erratic that even in a giant, careful trial, it’s devilishly difficult to arrive at a useful conclusion about whether ...

Read More Source

June 18th, 2014

In Business

No Comments

Startups are luck

Interesting:

The pivot used to be the exception. For example, a company starts out selling PEZ dispensers online and later pivots to become eBay. You didn’t hear about all of the companies that failed so the pivot stories probably sounded more prevalent than they were. It’s similar to how a story of one shark attack makes you think there’s a Great White under every surfboard. The human brain assumes that whatever it hears most frequently must be the best reflection of ...

Read More Source

June 17th, 2014

In Business

No Comments

The evil of innovation

Interesting:

The idea of progress—the notion that human history is the history of human betterment—dominated the world view of the West between the Enlightenment and the First World War. It had critics from the start, and, in the last century, even people who cherish the idea of progress, and point to improvements like the eradication of contagious diseases and the education of girls, have been hard-pressed to hold on to it while reckoning with two World Wars, the Holocaust and Hiroshima, ...

Read More Source

June 17th, 2014

In Technology

No Comments

Emacs struggles to get a good package manager

Kind of pathetic that the world’s best text editor only got package-support in 2012:

GNU Emacs 24 (released in June 2012) introduced official support for packages, that is, a way of installing extensions from a remote repository. This was a huge step forward for Emacs, as it not only allowed users to easily find and install extensions, but it also made it possible for extensions to build upon other extensions without having to tell the user “great you want to install ...

Read More Source

June 16th, 2014

In Philosophy

No Comments

Breaking into your boyfriend’s email to find if he is cheating on you

This is from Slashdot, from perhaps 2002 or 2003. I tried to find this using Google, but Google failed me:

Posted by CmdrTaco From the it-happened-again dept. SyD writes: “Apparently there is a major security hole on Hotmail that could allow crackers to read your e-mail. A hacking group known as root core discovered the hole and reported it to Microsoft.“

This isn’t the first time that the folks who are gonna give us a internet wide universal login system had a hole. ...

Read More Source

June 13th, 2014

In Business

No Comments

Internet advertising is a bad idea

Interesting:

Internet advertising has been the fastest growing advertising channel in recent years with paid search ads comprising the bulk of this revenue. We present results from a series of large scale field experiments done at eBay that were designed to measure the causal effectiveness of paid search ads. Because search clicks and purchase behavior are correlated, we show that returns from paid search are a fraction of conventional non-experimental estimates. As an extreme case, we show that brand-keyword ads ...

Read More Source

June 13th, 2014

In Business

No Comments

The madness of being an entrepreneur

Interesting:

In logarithmic domains, two mindsets are important. In the beginning, high-growth phase, the emphasis needs to be on maintaining long-term habits. Since growth is fast initially, care needs to be taken so that it won’t slide back down once effort is removed. In the later, low-growth phase, the emphasis needs to be on habit breaking. Since low-growth is often caused by calcifying routines, deliberate effort needs to be taken to break out of that comfort zone. In exponential domains, the mindset ...

Read More Source

June 10th, 2014

In Philosophy

No Comments

Tumour necrosis factors have not changed in 550 million years

Interesting:

There are many ways of triggering apoptosis, and one route involves two large groups of proteins: the tumour necrosis factors (TNFs), and the receptors that they stick to. When they meet, they set off a chain reaction inside the cell. A large network of proteins is recruited, united, and activated, until the cell eventually dies. Think of TNF as a key twisting in the lock of a door, triggering a Rube-Goldberg machine that ends with the entire room catching fire.

Now, ...

Read More Source

June 9th, 2014

In Philosophy

No Comments

Fasting helps bring back your stem cells

Fascinating article:

In both mice and a Phase 1 human clinical trial, long periods of not eating significantly lowered white blood cell counts. In mice, fasting cycles then “flipped a regenerative switch,” changing the signaling pathways for hematopoietic stem cells, which are responsible for the generation of blood and immune systems, the research showed.

The study has major implications for healthier aging, in which immune system decline contributes to increased susceptibility to disease as people age. By outlining how prolonged fasting cycles ...

Read More Source

June 7th, 2014

In Business

No Comments

The privacy crimes of Google+

Interesting:

Google began its “real name” enforcement with mass Google+ account suspensions and deletions shortly after Google+ launched in July 2011. The whole mess is called Nymwars.

Ex-Google employees were deleted. Writers, musicians, programmers and more were deleted. Editing your name raised suspicion and still risks getting you flagged.

Google+ remained silent while Nymwars raged through the headlines — until it told press it would allow “alternate names” — which was incorrectly reported (at first) as if Google had begin to allow ...

Read More Source

June 3rd, 2014

In Technology

No Comments

The strange way my memory works

I was at a job interview today and I said “Do you remember that essay that James Garret wrote in 2004, in which he coined the acronym ‘AJAX’ “?

Feeling uncertain about what I said, when I got home I decided to check my facts, and found that his name is actually “Jesse James Garrett“.

I find it strange that my memory would hang onto his middle name rather than his first name.

I am also surprised that the term “AJAX” ...

Read More Source

June 3rd, 2014

In Business

No Comments

The one remaining strength of publishing is its prestige

This essay is a bit harsh on the publishers, and it also ignores the fact that the publishers are responding rationally to the one strength they still have:

This is the true tragedy of modern “publishers”: that as the world has become able to do the job that once only they could do, they’ve not stepped graciously aside, but devoted their energies to preventing works being available. The publishers’ outdated business model forces them to act in a way directly opposed ...

Read More Source

June 3rd, 2014

In Philosophy

No Comments

800 dead babies in Ireland

Years ago, the Irish government apologized for the horrific sexual torture and human rights abuses that were inflicted on Irish girls who were considered wayward, and some monetary damages have been paid to surviving victims, but so far the Catholic Church has not fully apologized for the atrocities that were committed in institutions which it was running. In case anyone might forget how extensive the neglect and abuse was, here is a reminder:

Police are investigating the discovery of 800 ...

Read More Source

June 1st, 2014

In Technology

No Comments

Avoid overcrowding your web server with too many unneeded processes

This is some very good advice (I’ve been thinking of using Arch Linux for future projects, as I understand it is an extremely minimalist Linux):

Avoid overcrowding your web server with too many unneeded processes. For example, if your server is purely for web serving, avoid running (or even installing) X-Windows on the machine. On Windows, avoid running Microsoft Find Fast (part of Office) and 3-dimensional screen savers that result in 100% CPU utilization.

Some of the programs that you can consider ...

Read More Source

June 1st, 2014

In Technology

No Comments

Using Apache Flood to test websites

I only just learned about Flood. In the past I used ab, which is a severely limited tool, in that it only sends HEAD requests. What I have often wanted is a tool that was as simple as ab, but which could send parameters, make a GET request, and give me more feedback than CURL. The XML config for flood suggests it is nowhere as easy to use as ab, but it still looks fairly simple and it looks like ...

Read More Source

June 1st, 2014

In Technology

No Comments

How does PHP work

I like this graph about PHP execution. The white boxes show how things worked as long ago as PHP4 and the gray boxes show all the new and optional stuff:

Source

June 1st, 2014

In Technology

No Comments

PHP and Squid

This is interesting:

Perhaps the most significant change to PHP performance I have experienced since I first wrote this article is my use of Squid, a web accelerator that is able to take over the management of all static http files from Apache. You may be surprised to find that the overhead of using Apache to serve both dynamic PHP and static images, javascript, css, html is extremely high. From my experience, 40-50% of our Apache CPU utilisation is in ...

Read More Source