Author Archives: Zoltán Nagy

I’m writing an IRC server

Yes, really, in 2012. See here, it’s on GitHub. You can connect to a running instance at abesto.net:6667 Why, in the name of all that is 8-bit? For one, it’s fun. The core protocol is well defined by the RFCs.  In the web development world you don’t often get to program to specifications like that; it’s [...]

Posted in Server | Tagged , | Leave a comment

The sad case of the HP Pavilion g6, OpenGL and AMD switchable graphics

TL;DR No, it doesn’t work (as of 2012. April 28). This post is just to save you some time. But I’ll buy you a beer if you manage to get it to work, and tell me how. The facts HP has released the Pavilion g6 series in two (correct me if I’m wrong) versions; I [...]

Posted in Desktop | Tagged | Leave a comment

Morning project: NetPincér menu filter

NetPincér is an online food ordering service in Hungary. The website has quite a few problems, but one of the most annoying ones is that there’s no way to filter the menu of a restaurant based on what’s in the food. Even though most of the restaurants list some ingredients as the description of the [...]

Posted in Client | Tagged , | Leave a comment

Weekend project: Mastermind

We just had a national holiday, which meant a longish weekend with my parents. We played some board games, and as a result I hacked up a Mastermind game in CoffeeScript that runs entirely in the browser. It took about six-eight hours, and it was actually quite fun. The model was done in an hour [...]

Posted in Client | Tagged | Leave a comment

Clojure is fun

It was time to try it out. Here’s the result – 67 lines of Clojure code for an RPN calculator with the basic operators. Also, Seesaw (GUI lib for Clojure) rocks. GitHub repository Google Prettify doesn’t provide highlighting for Clojure. GitHub does, go there for pretty colors. (ns net.abesto.calc_clj.core (:gen-class) (:use seesaw.core)) (native!) (def stack-size [...]

Posted in Uncategorized | Leave a comment

Quick fix: Bring back the scroll buttons to GMail

There’s been some noise on the ‘net about missing scroll up/down buttons in the new Google design. Note that this only affects the browsers based on WebKit (Chrome, Safari and some KDE browsers, to name a few). Here’s a way to fix that. Why are the buttons gone? As IE before, WebKit has introduced styleable scroll-bars. (Whether that’s [...]

Posted in Client, Desktop | 4 Comments

Mostly shiny: vector graphics with MVVM in the browser

I’d like to show you how to make two great libraries work together: Raphael and Knockout. I’ve built the basics of a purely browser-based application for creating simple graphs (as in “graph theory”). This article was supposed to be a longish explanation of how it all works, but unfortunately I’m really short on time. The working [...]

Posted in Client | Tagged , , | Leave a comment

Linux server security tips

The obvious Always keep your system up to date with security patches. No amount of configuration can save you if your version of sshd allows anyone born before 1970-01-01 to log in as root. Always employ the Principle of least privilege: give users only the permissions they strictly need. Check that your system doesn’t run [...]

Posted in Server | Tagged , , | 2 Comments

Proposal: a community-powered collection of PHP best practices

Scott Griepentrog kindly rented a domain to use for this purpose and set up a publicly accessible Google Sites page. All that’s missing now is great content (actually, maybe not, if you’re from the future). You can find the wiki at http://phpfu.org Why? We all know the old argument on why PHP is often seen [...]

Posted in Server | Tagged , | 7 Comments

Node.js, Express and CoffeeScript

The solution oultlined here uses the compiler Connect middleware, which was removed in Connect 1.7 (and therefore in newer Express.js versions). The new alternative is connect-assets.Thanks to Marcel Miranda for pointing this out. I’ve been working on a moderately complex hobby project for a while using Node.js and CoffeeScript. This is the first of a [...]

Posted in Client, Server | Tagged , | 4 Comments