Validating emails is an apparently easy task that turns out to actually be quite difficult. In this post I'll evaluate a collection of regular expressions used for validating emails that I collected from the web and show that most of them don't actually do a very good job of validating emails. I'll argue that when it comes to validating emails you should stick to a simple, minimalist approach.Read More
Emacs is a great tool for clojure development. In fact you often hear people raving about the marriage of emacs and clojure without any clear explanation of if or why it's better than any other editor that you could use for clojure development.
I'm not going to get into why emacs is good for clojure development here. The aim of this post is to help someone who is looking to try it get up and running quickly, so they can try it for themselves.Read More
As developers we are surrounded by other developers in our day-to-day work-lives. And many of us have been writing code for as long as we can remember. As such we tend to normalise the skills that we have. In fact, we often underestimate the value of our skill set, since we work all day with other programmers who are just as, or even more, capable at programming that we are.
I've just finished working through "Web Development with Clojure" by Dmitry Sotnikov (Note: I read the beta version (b5, b6) but I believe it's pretty close to the final version apart from formatting and corrections).
In this article we'll step throught how to get setup with clojure. By the end you'll have a working clojure installation and a simple "hello world" project that you can run through the repl and on the command line.
BTE is a python module for automated extraction of body text from web pages. By body-text I mean extract the main textual content from the page and throw away all the extra non-important stuff like sidebars, navigation bars, header, footer, etc. It can also be used to generate short teasers/summaries.
SimpleICM is a basic ICM calculator. Given the payout structure and the stacks of the remaining players it calculates the tournament equity for each player.
So after programming almost exclusively on Unix for the last 10 years, I recently found myself doing some windows desktop development.
And since a significant portion of those years were spent programming in python, I started playing around with IronPython as a way to explore the Windows API. One of the projects I build as a learning exercise is SimpleICM.Read More
The problem: I have a windows application with an embedded WebBrowser component. I want to write a function to open the default browser. When the use clicks on a link in the embedded window, I want this link to open in a new window or tab in the default browser (WebBrowser components seem to like to hijack any attempt to open a url).