Skip to content
August 25, 2016 / jukkasoft

Ubuntu 16.04 Xenial post-install story



Installation was as easy as ever.

What about using the Ubuntu 16.04 ?

Once you get your fingers used to typing ‘systemctl’ instead of ‘service’ (due to systemd now being used as the init mechanism), you’re fine. Applications install fine with ‘apt’ (and yes, even apt-get, as in 14.04). Oh, and apt now has a progress meter! Read on!

Read more…

February 21, 2016 / jukkasoft

Stand-by; go!

Before my actual involvement in the open source software, I’d been a bystander for years. I think the foundations for the spark towards open source was laid out around 1998: I was a freshman at Aalto University. It was back then called “Otaniemi”, or officially: Helsinki University of Technology. Otaniemi is the name of the part of Espoo where the main campus is located in. That’s the kind of “Silicon Valley” of Finland (and if you’re interested in virtual tourism, Aalto university – a brief tour, part 1: the nature at Otaniemi campus).

I remember we had these thin clients outside the main lecture hall. They ran text terminals, and Pine was one of the biggest hits back then. Oh what an efficient program it was, once accustomed to the keyboard shortcuts! I loved Pine. (Nowadays it’s the Alpine at Washington University’s web pages project).


Pine email client

Safe to say that it took me 16 years to get hands-on with open source.

Sure, I’d installed a thing or two and even looked at source code, but I’d never committed anything back to the community. Especially ‘commit’ in meaning: writing code and submitting it.

I think the biggest reason wasn’t certainly lack of time — on the contrary — but that I hadn’t adopted naturally any project that would be “close to me”. That’s also the beauty of open source software: you can be a happy end-user for years, and enjoy both the software and documentation. Then, one day, you might find yourself in the same situation I was in: you participate!

So, in 2015 it happened. I worked daily with a tool called Karma. It wasn’t my bread and butter, but Karma was a firm part of the tools that made sure my code would play ball in the long run (English: ensuring code quality and being up-to-the-specifications). I’d been a front-end developer working with JavaScript.

There are at least two common setup scenarios for Karma: either it’s being used as a standalone tool, or it is part of a longer chain, being subservient to some mighty test management lord. I was in the latter boat. Karma produced reports via text file(s) to the lords. And I’d hit a problem with this particular detail.

[To be continued, in Part II]


January 22, 2016 / jukkasoft

Museum of Jukkasoft – the QuickBasic programs

I was looking for the thing yesterday – and found it today.

Ah, “what thing”, I hear. Jukkasoft’s history! The QuickBasic programs, written under DOS, years ago, that formed that backbone of my programming experiences. Well, truth be told, I dissed QuickBasic pretty much right after moving on to deeper waters. But QuickBasic was an excellent quick prototyping environment, even though there were a lot of things that would’ve probably been difficult if not outright impossible to do.

I wrote code pretty much every day; the programs varied from very simple one- or two-liners to more sophisticated ones.

One of those more complicated was TM2.BAS, a program that tracks expenses and income. I believe it was year 1993 when I wrote it; it’s pretty funny that just now, in recent years, electronic banks have started providing private customers these kinds of tools to aid in financial planning.

QB or QuickBasic was a fairly sophisticated IDE for MS-DOS. What differentiated it from lighter products were several features. First of all, the look and feel of the environment was very consistent and professional. Menus were built using block-based (ASCII) graphics, since in MS-DOS era programs ran in “text-mode”. There were drop-down menus, where one could navigate using either hotkeys or the cursor (or mouse).

The edit-compile-debug cycle of QuickBasic was very fast, which is always good in programming!

Especially being a novice, having a fast editor environment to test things it was easy to quickly learn from experiments, and not let a bed of bugs accumulate in the uncompiled and thus untested areas of the code. Quick variable and expression evaluation was also possible!

December 27, 2015 / jukkasoft

Smartphones inside out – part 1 of 2

Mobile phones were originally pretty simple, even completely analog electronic devices. They were closer to (and originated partly from) military portable radios. When the Finns sporadically ventured into guerrilla marketing in the 1980s, a delegation of politicians surprised head of Soviet Union, Mikhail Gorbachev by stashing a mobile phone and an open connection to the Kreml.

Nowadays ‘smartphones’ as we tend to know these devices, are an advanced species – even so that we might think of them a bit like Arthur C. Clarke defined magic: “Any sufficiently advanced technology is indistinguishable from magic”.

That is, we start to accept our limited understanding and capability to know what really goes on behind the scenes in a smartphone.

Let’s open the curtains a bit.

A smartphone is a computer in a small form factor, using a mobile network to do things that are fun and useful to us.

I’ll first introduce general electronics, regardless of what size the “computer is”.

You don’t have to know basically anything about either computers or mobile phones (I’ll use the term ‘mobile phone’ and smartphone interchangeably).

“In the old days” the electronics seemed to be less visible and only served a kind of infrastructure (auxiliary) role in mobile phones. The batteries lasted for weeks, since the phone was mostly in a very passive state; waiting for activity, with no large bright colorful displays like today’s (2013) phones. Nowadays people find the battery depleted almost habitually in 12 hours or less. And all this, even though the capacities of the batteries have increased considerable. The culprit? Vastly more complex and power-hungry circuits and displays. Also the network traffic is different; the 1990s mobile phones could achieve data speeds of only

The electronics starts with current; that is, a stream of electrons. An electron is a carrier of negative charge. It can move either via a charge conductor, or in ‘ether’ (air, or vacuum – doesn’t matter) through spaces. When we’re talking about electronics, the charge movement happens usually in copper. Copper is abundant and relatively cheap substance, thus very common in electronics.

When talking about a “45 nm” (or 5, 10, 14, …) production technology, the number 45 nanometers is referring to the width of those copper via’s. A “via” means just that; you can think of it as a road for the charge carriers, electrons. Between two vias there is space (empty), so that current doesn’t flow inappropriately. In reality, the pitch area (space between vias) is made of such material that electrons do not flow. Resistance is high, whereas in conductors the resistance is very low.

Since electronics is a physical realization, there comes the limitations imposed by physics. Electric impulses, although fast, travel at finite speed. Also in parallel data it has to be taken into account that the individual pulses encoding a “bit” might arrive slightly at different times, if the via length differs from each other. This is what EDA tackles in optimizing routes.

A baby computer? 

If you know something about the inner workings of computers, then think of a smartphone as a computer with just a unique layout of components (screen, external buttons, speaker, microphone, camera) and add to that essentially a “long range Wifi” (wireless connection). Why I use the word ‘Wifi’ in referring to actually the family of GSM/GPRS/3G/4G connections is that essentially there’s no magic in the “native” mobile connection – it’s a radio network, and in fact when the mobile phone’s signal has reached the base station, it travels – not via radio – but via fiber optic cables into switching centers, which take it through routing into the closest base station of your discussion partner. There’s your phone!

A smartphone has developed so fast that some phones pack more memory and computing power than laptops. Just now, approaching the year 2014 the year 2016, a major barrier between 32-bit and 64-bit processors is being overcome. 32-bit processors have an innate limit of accessing at most 2^32 (two to the power of thirty two) bytes of memory, which amounts to 4 gigabytes (4096 times one megabyte of memory). This of the equivalent of storing approximately 4000 high quality images. When the processors are done in 64-bit technology, it means that their internal registers (pointers to memory) are added another 32 bits, and thus the new maximum memory is increased to quite a remarkable amount: 4 billion times the old barrier, or 2 to the power of 64.

Stay tuned for part 2…


December 25, 2015 / jukkasoft

Tässä ja nyt – tilastollinen terveys

Aiheena pieni uutinen, tuulahdus lääketieteen tulevaisuudesta. Luin juuri kiinnostavasta ideasta; miten estää sairauksia tekniikan ja tilastotieteen avulla?

Perinteisesti lääketiede on lähtenyt olettamuksesta, että ihminen on terve niin kauan kunnes jokin muutos muodostuu vaivaksi asti. Hoitoa on useanlaista; palliatiivista (oireita lievittävää), korjaavaa (lastoitetaan esimerkiksi murtuma), ja kehon omaa paranemisprosessia tehostavaa (antibiootit tyypillisenä esimerkkinä).

Silti todennäköisesti hoidon tehon ja kustannusten kannalta olisi parempi, jos tunnistettaisiin jo kaukaa ne sairauden esiasteet, jotka tulevaisuudessa kehittyvät sairauksiksi.

Prediktiivinen analytiikka – aika paha sanahirviö. Tuo voitaisiin itse asiassa suomentaa aivan ymmärrettäväksi, esimerkiksi ‘ennakoiva tilastotiede’. Kyseessä on kiinnostava suuntaus sovelletun matematiikan alalla: miten ennustaa reaaliajassa, tässä ja nyt, menneiden perusteella tulevaa? Sovelluksia olisi monella alueella, ei vähiten lääketieteessä ja terveydenhuollossa. Sen sijaan että odotamme sairastumista (jotkut tätä pelätenkin), voisimme toimia sairastumisen minimoimiseksi – ja parhaimmillaan vielä suhteellisen vaivatta.

IT-alalla analytiikka on seurannut erilaisten mainos- ja myyntikampanjoiden tehoa. Se on ammentanut psykologiasta, tietomassoista, kävijäkirjauksista, villeistä uusista mainosideoista, ja luonut kauppiaille tai muille vaikutusvaltaa halajaville kojelautoja (dashboards), joista voi seurata oman firmansa toimien vaikutusta asiakkaisiin. Sissimainonta on ollut yksi markkinoinnin haara, (mm.) jonka tehoa on voinut seurata analytiikalla. Analytiikan avulla voidaan tehdä tarkkoja vertailumittauksia eri mainostuskanavien ja -keinojen välillä. Siinä missä ennenvanhaan mainostaja on vain ostanut tietyn suuruisia kampanjoita, niiden tehoa on ollut vaikeampi mitata. Viive on voinut ollut viikkoja tai jopa kuukausia.

December 25, 2015 / jukkasoft

Aalto university – a brief tour, part 1: the nature

One of the things that make me come back again and again into the Otaniemi campus of Aalto University is the nature! Upon entering Otaniemi, especially if it’s not winter, one quite certainly marks the role of all green in the surroundings; lush foliage, a lot of turf and lawn scattered within the campus (or should I say it’s the other way around, actually!)

How did it come to be this way?

The surroundings of the campus have been basically quite rural up until the latter part of 20th century. In the beginning of 1960s Espoo passed the population limit of 50,000 inhabitants (see figure).

It was also very close to the year when TKK, the Helsinki University of Technology, was moved from our capital Helsinki to Otaniemi in Espoo. In 1952 the first dwellings in the so-called ‘Teekkarikylä‘ (student housing) were built, partly to accomodate the 1952 Helsinki Olympic games participants.

English: Aalto University Otaniemi Campus Libr...

English: Aalto University Otaniemi Campus Library in Espoo Finland. Otaniemi is a district in Espoo which itself is Finland´s second largest city and a part of the Helsinki Metropolitan area. (Photo credit: Wikipedia)

Otaniemi expanded. And continues to do so. There are nowadays close to 1000 high tech companies of various sizes spread into half a dozen business parks, over 8000 jobs, and of course the student body of the quite newly formed Aalto University.

In midst of all change, Otaniemi has still retained traditional merits — and of those I think the strongest is simply: the nature.

It’unique; a matter of fact is that I’ve not visited that many universities around the world, but I think Aalto has the fortune to be located next to a very beautiful natural reserve of Laajalahti. With its 1.8 square kilometers of lush shores, open waters, a broad reedbed and meadows, it imprints a lasting effect on the passer-by.

Laajalahti is beautiful in almost any set of conditions, but I especially love the hour before sunset; dark and light contrast in the Finnish mid summer. Be sure to take a camera with you, should you choose to visit the reserve either on ground level or by climbing to one of the birdwatcher towers.

October 10, 2015 / jukkasoft

Bussy ideas: what a great opportunity to write articles

Even though I generally don’t like slow traffic, today after work I managed to turn this to a kind of victory: most of what you see below was written on the bus trip. It was mere 50km but seems like the national day for beginning of the school year means a lot, traffic-wise. There were quite a lot of buzz.

What I understood on the way home was that in order to really gain insight to this project, where I’m talking about the mass transit systems, it would be really good to make some tabular examples.

I like to gather a simple model of traffic modes and then collect some rough data on properties for each of those modes. At first I came up with 9 modes and 2 properties. The first step would be to make a rough sketch of the model. It’s interesting how there are fundamental differences, like: a train can “skip” car traffic (railroads are unaffected by cars, at least directly). Airplanes don’t follow roads – but they follow certain other limitations. Train vs. flying? When should one pick a flight, when is train still more suitable perhaps due to economy, time, or the ability to either relax or do work during the trip?

The traffic is an interesting phenomena. It can be thought of as…

  • being a mechanical system
  • being a dynamic system (truly thinking of the traffic flows, queues and so on)
  • having certain costs for the individual and for anyone who is responsible of setting up the “circuits” (roads, rails, waterways) and any infrastructure related to those
  • traffic is ultimately there to enable people the movement and extend their capabilities, space-wise

There’s a lot at play when we’re thinking of mass transit systems. For example, one interesting property is that you can’t isolate the systems; you most likely could not “own entire circuits” (or eg. road systems) and then just plant precisely the required taxis or buses in there, and reap profits. Traffic doesn’t work that way. It’s an interplay between all the actors involved. Only railroads seem to be somewhat prone to be very controlled and even monopolistic.

Mass traffic (public transportation) is a kind of ever-hot potato, around the world. The level of its penetration (use) and sophistication varies probably quite a lot. The type of vehicles used also depends on geography; is the country mountainous or flat? Does the country stretch over a large area or is it small? Or something in-between?

More to come!