Blogging about Freeciv and longturn games

This week I started blogging about Freeciv and longturn games at freecivbook.com.

It’s actually a blog for my work-in-progress book about Freeciv. If it will be successful, I might really write a book about Freeciv. Until then I’ll write articles one at the time and publish them there.

Fork me on GitHub
Posted in Games | Leave a comment

Post NKO Greetings

Last weekend I was part of Node Knockout for the first time. We were three man team and I couldn’t have done it without @jkjuopperi and @paveq2. It was fun to work together!

Also great thanks to Kapsi Internet-käyttäjät Ry for letting us to work from their HQ.

Our entry was a hosted web shell service which can be used for IRC — and other things in the future. The source code will be published is published as MIT-licensed at GitHub soon. We plan to continue the development there, too.

For now, you can review and vote our deployed entry at oulu.nko2.nodeknockout.com. Update: Only custom guide works; we were banned from Freenode #Node.js and cannot change the code.

There was only three other teams from Finland. Please review them too!

Update:
If our oulu.nko2.nodeknockout.com doesn’t work try refreshing the browser or change API key to something wrong (it will then automatically create a new one). Please wait at least 15 seconds for the red balloon to change green — that means the browser has working connection to the shell server.

Update:
We open sourced it: https://github.com/nko2/oulu

Update:
Our database should be cleaned now. If you had problems to make it working please try again now. If something doesn’t seem to work (you see only your lines for example), just refresh once more.

Update:
It’s not working now because we were banned from Freenode #node.js. We are working to make it work somewhere else but it’s hard since we cannot change the code.

Update:
We are now using Kapsi’s IRC server at irc.kapsi.fi and #node.js there. We were able to change chat.freenode.net to point there from /etc/hosts.

Posted in Programming | Leave a comment

Resources for upcoming Node Knockout

Our team has gathered some useful links and notes for upcoming Node Knockout contest. These might be useful for others, too.

Node Knockout in general:

Online resources (Books etc):

Useful Node.js libraries and tools:

  • Cradle — A high-level, caching, CouchDB client for Node.js. It has very nice and simple asynchronous interface.
  • NowJS — Easy to use browser vs server integration
  • socket.io — Sockets between client and server (and other servers with additional modules)
  • JADE template engine — A template engine. Not sure if this is the best choice, thought. It’s slow (for human) to transform HTML to JADE.
  • Express JS — A web framework
  • Forever — Keep node process running forever
  • underscore — General operations. Good thing: doesn’t modify global objects.
  • backbone — Lightweight MVC abstraction
  • node-init — Turn node.js into LSB-compatible init script
  • everyauth — Authentication module
  • BlueprintCSS — CSS Framework
  • lesscss — The dynamic stylesheet language

JavaScript IDEs:

If you know something else useful please tweet me or write a comment below!

Posted in Programming | 1 Comment

Join my team at Node Knockout

I am setting up a team for Node Knockout. It is a contest where teams are creating a web application with Node.js in 48 hours starting August 27. For us this will be a hobby project: having fun and learning will be the main purpose here.

At the moment I am looking for people with programming or graphical skills to join my team. I would prefer if you are near Oulu, Finland or can travel here. We could then work in the same location. Finnish language skills would be nice but not required — English is the language of programmers anyway.

Please note: I don’t believe you need to be a Node.js guru to join my team. There isn’t many in Finland anyway. I think myself as a JavaScript, Node and Google v8 guru. I can help with possible issues.

I am also seeking sponsors. Talks have already started with some but please contact us if you think you can offer something! We will mostly need a place to work but food and drinks might be nice, too.

The concept of our app is not settled yet. I personally would like to use our old concept AGE – Ajax Game Engine. It’s over four years old but we never did more than concept work and it was all that summer four year ago. I have done nothing for AGE after that time.

Posted in Game design, Other things, Programming, Software, Web development & design | 1 Comment

One small step for a programmer, one giant leap for the lifetime

It has been over two weeks since I published my first NPM module. Also a month since I started using GitHub. I am posting about this because this is the biggest change in my life as a programmer since I got my own computer and access to the Internet.

I am not saying that systems like these are something new. These were not new to me. I wasn’t just using them before. I am a bit agnostic and it takes time for me to move from something old to new.

I have been programming same things over and over again most of my life — sometimes it’s called NIH. Usually that’s because one of these bad reasons:

  • I don’t remember or know where the old code is or even that it exists
  • I don’t know how to use it anymore and writing new is easier
  • I made the first code for a company I don’t work anymore

There’s a lot more reasons to do NIH (both good and bad) but these are the reasons I hopefully don’t need to use anymore because of open source NPM and GitHub.

Now I have 15 repos in GitHub and five public NPM modules. GitHub provides me and my projects version control system, bug-/issuetracker, social tracking of programmers and projects, wikis, websites, easy way to write documentation, and much much more. I could do these myself but it wouldn’t be that easy. Also it’s likely that nobody would find their way to my website either.

Before this I was using SVN and my own websites to share my code. I’ve now started to move all my SVN projects to GitHub. I’m also publishing my old JavaScript stuff as NPM modules, too. Most of them are for my old OpenJS project but I am porting them to Node.js anytime I need them.

One of the biggest things using GitHub and public NPM is how easy it is to share your code. It’s not just easy to share it to other people but to yourself, too.

This week I made yet another Session library. I don’t know how many Session implementations I have done or with how many programming languages. At least five times for JavaScript, that’s for sure. Now it’s in my GitHub and I am never ever going to do a new Session module because of these bad reasons. There’s even a documentation now — if you can call it that. It’s still better than no docs at all!

Posted in Programming, Software | Leave a comment

Blue Ocean Strategy as a PDF

Today I was searching Blue Ocean Strategy as a legit download to be used with my Kindle. It turns out that it indeed exists for Amazon Kindle Store but sadly that’s yet another ebook not sale for Finnish customers.

It seems that the only way to buy it digitally here in Finland is from Harvard Business Preview as PDF chapters $6,95/chapter totalling $69,50 for full 10 chapters.

Here is a link list to these chapters:

PS: Also thanks for Samuel at Harvard Business Preview customer service for helping me to solve my problems.

Posted in Business, Electronic books, Marketing | Leave a comment

Here comes the election day, every useless vote counts!

I am just on my way to vote in the Finland’s Parliamentary elections.

There is probably two realistic outcomes:

I vote for a candidate that does not get to the Parliament…

  • …but someone from his party I don’t like does
  • …and nobody from his party does

You might ask, “why do I vote?” Simply because I hope I am wrong. So, please vote! Any useless vote counts!

Posted in Other things | Leave a comment

I joined Twitter

You can now follow me on Twitter, @jheusala. Too bad my full name was too long. I had to cut hyphen from it. :-)

Posted in Programming, Software, Web development & design | Leave a comment

Sendanor.com

We are starting a new kind of web service platform for websites and applications all alike. Our mission is to make installing, building and maintaining web applications as easy as it should be for any user (advanced or not) no matter what server or system they use.

Our system will technically enable any user to create their own cloud-like network connecting any system he/she has access (servers, shell accounts, desktops etc) into a single coherent easy to use environment. Apps like WordPress can be moved or cloned from one node to another without unnecessary work or hassle. Our service will be accessed using standard web browser or a programmable HTTP-based API.

You can request an invite for a free beta system at sendanor.com.

Posted in Programming, Software, Web development & design | Leave a comment

Standalone independent JavaScript using Node

I wrote a small bit of code today to make it easier to create static JavaScript programs. It automatically “compiles” your own built-in 3rd party JavaScript file(s) with Node.js as a single standalone binary file. It’s still far from perfect but hey, it’s only few hours old project.

$ cat dummy.js
console.log("I am a dummy.js");
$ node-builder.js -q -o dummy dummy.js
$ ./dummy
I am a dummy.js
$ file dummy
dummy: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped

Only ./dummy file is needed to execute your program. Nothing else needs to be installed. (Except special external modules, which node-builder doesn’t support (unless provided with the binary) but I probably will figure some way to support those too.)

I’ll be releasing this as a open source npm module once I get time to clean the code with fresh eyes.

Posted in Programming, Software | Leave a comment