Adding Hyphenation to NSString
Khoi Vinh recently showed that the typesetting in Apple’s iBooks is quite horrendous. One obvious problem is that the text is layout with justification (which is probably an appropriate decision when typesetting books), but lacks hyphenation. John Gruber does not approve. The fact is, there are pretty good algorithms for hyphenation. The Hunspell project has a library that [...]
MoProPro: a single command to add testers to iPhone provisioning profiles
Distributing iPhone applications to testers requires the developer to sign their code using a combination of a (ad hoc) distribution certificate and a mobile provisioning profile, which explicitly contains the device ids (UDIDs) of all your testers. Introducing MoProPro MoProPro automates as much as possible of a very specific, but for iPhone developers very common [...]
Building commercial Haskell applications
About a month ago, one of our clients called. They needed to have a payment service, and they wanted it tomorrow. Or next week. Basically, they had two big requirements: it had to be done safe and soon. We were quite busy that week: one of us was on a holiday and the other had [...]
Running Happstack applications with FastCGI
This weekend the 5th Haskell Hackathon happened. It was hosted by Utrecht University and organized by people from the university and us. Together with Galois and Microsoft Research we sponsored the event. Between running around, listening to interesting presentations and talking to cool people we were able to code up a module enabling us to [...]
On unit testing and type checking
As most software developers know, it’s hard to create robust software. There is a lot of software out there that’s got bugs and a lot of time the developer doesn’t know about it and the users of the software run in to them. This is of course a very frustrating thing for both developers and [...]
Grid Computing using Javascript
I recently had an idea that’s both really interesting and a bit disturbing. Authors of websites could use clients’ computers as a massive grid computer. If you have a problem that you can solve by using map-reduce, you could do the map step in the client’s web-browser, and let them send back the result. Most [...]
Look ma, no callbacks!
In this article, we will see how we can use arrows in Javascript. Arrows are a concept from functional programming, and we’ll see how they can make our life in Javascript a lot easier. Our code uses the excellent Arrowlets library. It’s still alpha code, but it’s already quite useful. We’re going to build a [...]
Formlets in Haskell
One of the most low-level parts of web development is building forms. You need to code to both build forms and handle them, and manually sync that code to make sure the names match up. In this post, we will use formlets and HAppS-Server to solve those problems. Formlets are a way to compose parts [...]
Stemming with Haskell reloaded
Thanks to the nice discussion with Reinier Lamers of the previous post, I’ve updated and released the stemmer library with a more Haskell-like interface.
Stemming with Haskell
Last week we worked on building a small search engine with Haskell. As you might know, when searching you’ll need some index you’ll search and possibly stemming to allow people to search for variants of a word and still come up with accurate results. Fortunately for us, there are already good libraries and tools out [...]