After a busy end of last year (technical papers, book chapters and exams!), I’ve finally got some time to complete porting mobilemind to s60.
So far I’ve got the engine and HTML rendering ported and all the unit tests passing. Now it’s a matter of coming up with a suitable UI.
S80 was relatively easy in this respect since the platform provided a hierarchical listbox. It actually took a long time in the end because the listboxes are so poorly documented and error prone. But at least the end result was quite pleasing.
S60 doesn’t have hierarchical list boxes, the idom tends to be more like the iPod where by hierarchy is represented by items such as “playlist>”, and selecting the item brings up the next level as a flat list.
I’ve been wondering how to best do this and while I like the simplicity of the iPod style list. It’s not very good for emphasizing the spacial relationship.
While I’m keen on a real 2d mindmap view, I’m not convinced that this will be the most efficient format on a small screen.
Not knowing the answers, I’ve decided to start prototyping. I was hoping to get some rough python programs together to test out a couple of visualisations on real devices.
Thanks for everyone who has volunteered to be beta testers. I hope to have cut 1 within a few weeks.
In the response, I saw that Starbucks claim to have nutritional information at hand. I was always curious how many kilo-pies a cup full of cream drink “inspired” by coffee contained. But I thought 628Cal for a single drink seemed excessive.
Curious. I dipped into one of their stores and picked up a leaflet. And It’s very comprehensive. It also shows that it’s the Whole milk Venti White Chocolate Mocha with whip which is the chief offender weighing in at 628Cals.
Now anyone who has ever seen a Venti cup will know that it’s a comedy coffee cup designed to go into a American people carrier’s cup holder designed for a litre cup of coke.
That’s 591.5 mL over half a litre of drink made of mostly chocolate and cream.
While irresponsible as it is to sell such a bloaty monster, it’s not really the drink that you crave for in the morning after waking up with a dry mouth and headache and a powerpoint to complete by 9am.
So yes, coffee with milk is not empty calories, but Which! didn’t have to do any mass spectronomy to work out the figures. It’s there on the leaflet.
In case you only caught the headline, coffee by itself has almost no calories. As a typical example, the italians tend to drink Macchiato (9 cals) for breakfast – espresso with a little dollop of steamed milk. And then espresso (6 cals, not incl. sugar) throughout the day.
What’s probably more of a concern is the cumlative cost of coffee. A 2 quid cup of coffee a day cost you more than £500 a year. A figure which may be acceptable if was a coffee which reminded you every day why life is so great, but most of the time it’s hot air passed through stale beans.
While I admire a well made espresso (Bar Italia, Monmouth coffee, and a few other independents). I’m also found of a long tall black coffee to keep me company while I read the papers.
While traveling to Denmark, I picked up the best coffee filter.
The eva solo with neoprene wet suite to keep it warm and seductive zip. It’s hot, non drip and easy to clean.
Sometimes I think that the mobile phone business provides the perfect vector for spreading worldwide diseases. Hot desking has become quite a popular technique for cutting down on floor space within London because often only a percentage of the staff are at their desks at any given time, the other lot are attending important meeting s with customers, attending trade shows, or forming key strategic alliances with partners within the ecosystem.
(BTW If you are wondering what happens if everyone happens to turn up on the same day. An excellent question. But it seems that this species of employee is more at home conducting meetings from the comfort of the wifi enabled starbucks adjacent to the office. Genius)
Now putting aside the issue of the Yeti feet carbon footprint. Having all these people travel around the world and return to the hive once in a while provides a great opportunity to proliferate infectious agents.
I try to avoid the office on the very first week back after Christmas since the inhabitants of the office all go back to their little villages over the UK and Europe and give drunken hugs to all their infected old friend will bring back their lovely region specific viri to one place.
My misanthropic behavior (and gloves) usually works quite well, but bugger me, after two days in the office last week I came down with a 38.3degree fever and a lots of unpleasantness.
Well it all reminded me of a posting I made on linked in last year in response to someone asking for advice on cold remedies.
“Sit tight. A cold is a marvelous process of the human body. Basically, a cold is a bunch of signals that tell you that some virus particles have arrived inside your body. The virus enteres your body through the air (coughs and sneezes) or by touching a rail on the tube that was previously touched by a person who rubbed their nose. You can’t do much to avoid the common cold except never make contact with people.
Most viruses are specific to a animal/plant species and so a human targeting virus needs a human host to survive in the long terms. A cold virus may stay active on surfaces for an hour or two (the protein capsule which surrounds the DNA of the virus will eventually dry up).
I found that a bit of enlightenment actually help cope with the symptoms. All the crap that you are feeling is actually a response from your body, nothing to do with the actual action of the virus. Your body is trying its best to limit the damage of the unknown particle and ultimately wants to get rid of it. If you think about it like this, then treating the symptoms , i.e. reducing the amount of mucus, coughing and sneezes could prolong your body’s hell bent mission of ejecting the virus. Accept that the human body is amazing, and this response is what keeps you alive and able to function in a large society where infectious particles viruses can be passed with ease.
The billion dollar industry of “flu medicines” and homeopathic/herbal treatments take great advantage of the ignorance of what a cold really is, and the guilt you feel for “running yourself down” means that you are susceptible to their “fast acting” fixes. Combine this with a stressful job and it’s easy to see why anyone would happily spend a tenner a day on remedies to make it better. As my mum says, “A cold may lasts a fortnight, but using a remedy will make it disappear in around two weeks.”
Look at the label of flu remedies. The overpriced flu plus version of a product often just contains paracetamol(25p per pack at my local spar) and caffeine.
What can you really do?
The things you have at home are good and cheap
honey in hot water to help when your throat is dry and croaky
Caffeine seems to have the effect of making you feel more alert during a cold. Drink coffee when you need to stay sharp.
Water
Chicken soup (or any comfort food such as fish finger sandwich)
Patience If you want to avoid colds altogether; give up work, wear gloves and avoid contact with anyone or anything.
The placebo delivery mechanism, such as spending money to get someone prescribe you a personal treatment may have some benefits in encouraging a positive response which may help you recover quicker., but really for a couple of days?
From a pharmacological point of view. If you think you need drugs to fix a virus you need to read up on basic biology. Anti viral drugs are only really available for well known viruses such as HIV (anti retrovirals). And anti biotics do nothing above the placebo effect. If a herb or homeopathic “substance” existed which kills a virus quicker then it would become part of “western medicine” once approved by the FDA.
* Echinacea and others are going through various trials still but the evidence is often conflicting. lots of info in journals on this subject”
Now that Apple have annouced their first Solid state laptop – The Apple Air, it looks inevitable that NAND flash technology will start to displace hard drives over the next decade.
The economies of scale achieved by the flash industry in just a few years are astounding, with multigig flash cards available for just a few pounds and appliances from phones, cameras and MP3 players making use of the large storage space. But let us not forget the growth achieved by hard disk technology over the last 50 years.
The following is a photo of a 5MB Hard drive from IBM taken in 1956.
Finally, in the last in my series of post on Treemaps. I bring you the ROM size treemap.
There are two ways of getting the data. On a pre S603.0 device, it was easy to generate a list of files on the ROM (the ‘z:’ drive). But due to platform security this is no longer possible from a 3rd party application.
The second way is to cross reference the log files generated by the ROM build processes. After a ROM has been build, the .log file contains a list of binaries and their size in ROM and the .dir file contains a map from the binary name to the file system.
So with the .log and .dir files in hand, a ROM size treemap can be constructed.
The following screen shot was generated on a development ROM with a large core image and small ROFS (read only file system) which together form the composite “z” file system.
The file names have been annonomised (sorry), but you can see the contribution of binaries verses resources etc. The files are coloured by file extension.
As a teaser – the largest binary in the top left of sys/bin is the webcore.dll.
Following on from the recent post on using Treemaps to visualise large code bases. I’ve made some improvements to the scripts and have successfully used the tools on the biggest code bases I could find.
I was having problems with the Treemap app failing silently with large data sets. A bit of binary chopping showed that the app failed as it’s RAM reached the default java heap size for the VM.
All is well if you run it with a 960MB maximum heap.
java -Xms32m -Xmx960m -jar treemap.jar
Secondly, I found it useful to filter out test code. And so I’ve updated the script with an option “-t” to skip any paths which include the word “test”.
And finally, I added a column which computed the code/comment density. Where 100% Means one line of comment for every line of code. Please see the subsystem screen shot below in which the brighter green represents a higher density of comments.