Last night I went to a Birkbeck training session for prospective mentors. I did not realise before I turned up that all, or almost all, the would-be mentors would be MSc Computer Science graduates.
In the end that fact alone turned what could have been a pretty dull way to spend a Friday night into something quite interesting – I don’t get to talk to developers very often at all, and now I was in a room full of them.
And one of them – a chief executive of a start-up with a fascinating back-story (but he didn’t say ‘put that on your blog’, so I won’t) – told me what he regards as the best way for a would be developer to get their breakthrough job: go to github, find a high profile project from a commercial outfit (he suggested the Chrome browser from Google) and fix a few bugs.
His claim was that he knew several people – including two with jobs at Google – who had got work in this way. I have no reason to think he was doing anything other than telling the truth.
Interestingly, he was pretty surprised when I talked about the poor employment record of computer science graduates – there plainly is some sort of disconnect between the firms recruiting (who say they struggle to fill jobs) and the graduates (who struggle to get recruited).
- The Top 10 Schools In The World For App Developers [RANKED] (businessinsider.com)
- PhD Web Science University of Southampton (phdland.com)
- Can Obama Convince High Schools To Teach Kids To Code? (forbes.com)
- What Hackers Need (recoding.blogspot.com)
- Want a job? Major in computer science (utsandiego.com)
- NYC to teach computer science and software engineering in 20 schools (computinged.wordpress.com)
- ‘Teach computing’ primaries urged (bbc.co.uk)
I am not sure how much time and effort I will be able to devote to it, but hopefully I will produce something somebody (even if it is just me) can use.
Yesterday I discovered someone had written a DSL with Haskell to generate MetaPost output – and so maybe I could do something similar using Groovy, but to commit myself to that would be a step too far for now.
Still, it is good to be writing some code again.
Conway’s Game of Life has long fascinated me. Thirty years ago I wrote some Z80 machine code to run it on a Sinclair ZX80 and when I wrote BINSIC, my reimplentation of Sinclair ZX81 BASIC, Life was the obvious choice for a demonstration piece of BASIC (and I had to rewrite it from scratch when I discovered that the version in Basic Computer Games was banjaxed).
But Life is much more than a game – it continues to be the foundation of ongoing research into computability and geometry - as the linked article in the New Scientist reports.
For me, it’s just fun though. When I wrote my first version of it back in 1981 I merely used the rubric in Basic Computer Games – there was no description of gliders or any of the other fascinating patterns that the game throws up – so in a sense I “discovered” them independently, with all the excitement that implies: it is certainly possible to spend hours typing in patterns to see what results they produce and to keep coming back for more.
- “Life.bas” should run on any system that will support the Java SDK – for instance it will run on a Raspberry Pi – follow the instructions on the BINSIC page. A more up to date version may be available in the Github repository at any given time (for instance, at the time of writing, the version in Git supports graphics plotting, the version in the JAR file on the server only supports text plotting). On the other hand, at any given time the version in Git may not work at all: thems the breaks. If you need assistance then just comment here or email me adrianmcmenamin at gmail.
- BINSIC plotting working (cartesianproduct.wordpress.com)
- Relive the ZX81 experience on your desktop (cartesianproduct.wordpress.com)
- A glider on an aperiodic cellular automaton exists! (aperiodical.com)
- Running BASIC on the Raspberry Pi (cartesianproduct.wordpress.com)
- Google Hides a “Game of Life” Easter Egg on the Search Page (news.softpedia.com)
Last.fm have had a security breach and advised all their users (such as me) to change their passwords. As with LinkedIn, having passwords hashed may not be enough to keep them secure.
I don’t know what has happened here and will refrain from commenting on Last.fm in particular, but one does begin to feel that these companies need some form of forceful reminder of their duty to hold these things as securely as possibly. People should just not be able to filch masses of passwords. Not even the chief executive (again, for the avoidance of doubt I am certainly not accusing any chief executive of having done so – the point is a general one).
What can be done? Two piece authentication, as practised by GitHub – the machines I use GitHub on have to have access to a public key I have registered with them as well as a per session password – would be one form. But can you see users of mass social network sites generating public keys and registering them? Neither can I and more importantly I don’t think the companies can either: but if they are not going to implement that then they need to tighten things up considerably at the server side.
I have, so far at least, solved my capitalisation problem for BINSIC with a preprocessor. Now I can just replace the offending character strings with ones Groovy will handle.
It does suggest problems later though – if I want to write something like PRINT “This code uses a PRINT statement” I will get odd results unless I make my replacement code somewhat more sophisticated.
And I still have not solved the line numbers issue. So it will be a while before this is a fully functional BASIC.
Some code is now on GitHub: https://github.com/mcmenaminadrian/BINSIC
I had never heard of Geeklist until last week, when I received an email from them and then read the story about their promotion of “brogramming” and abusive response to being called out for it.
The email came first – and as I had never head of them this -
Hi, my name is Jenny and I work for Geeklist, sorry to bug in advance! I noticed you have your email listed on github, so I wanted to reach out and send you a quick note (only this once and never again I promise!). We recently added integration with Github‘s API and wanted to see if you are interested in testing it out and give us feedback, perhaps you can add Groovy-Life or valext?
I realize this comes out of nowhere, but this might be interesting way to connect with other awesome geeks too (mabye), would love to hear feedback in general on that as well. We have a ton of geeks in our system already ranging from Matz the creator of Ruby http://geekli.st/matzand awesome geeks building great products http://geekli.st/dtrinh/i-helped-build-path-2
If you are cool with this and want to check it out go to: http://geekli.st/invite/********** and use this code: ******
We are only sending this to a few people, so let me know if you wish to invite others! thank you so much and sorry to bug you!
- made me think they were a genuine community effort. I made a note to have another look.
But having read about their attitude to women that other other look is now a good deal more sceptical – though even I thought it odd they suggested I added a program designed to analyse the XML output of a hardcore debugging tool.
And, of course, the first thing I noticed on a second look was the subject line:
RE: Quick question / your work on Github
As I have never written to Geeklist about anything and had never even heard of them before the email turned up it is obvious that this email was not “RE:” anything. It is spam from some spammers trying to cheat spam filters and will be treated in just the same way as the occasional other bits of spam mail that get through the filter.
I hope others will follow a similar course of action.
I would not have minded if they had actually badged the email as what it really was – as they say my email is on Github and if you consciously post your email it is because you want or expect people to get in touch. But the crude attempts at psychological manipulation – hi my name is jenny – and above all the dishonest subject line mean it is straight to the WPB for them.
- My Opinion About The Geeklist Sexism Case (dreamintech.net)
- Geeklist Reminds Us That On Twitter, Everyone Can See You Destroy Your Own Brand (bub.blicio.us)
- Apology from Geeklist (gklst.tumblr.com)
- Geeklist and the Sexy Lady Video: Another Startup Falls Prey to Sexism Charges [VIDEO] (betabeat.com)
- Why are posts about the Geeklist controversy being removed from Hacker News? (untogether.co.uk)
- The Geeklist demo on how to destroy a budding startup brand image in just a few tweets. (adland.tv)
I have posted a new version of mkfs.vmufat, a tool to make a VMUFAT filesystem, at my GitHub repo: it will now format a file as VMUFAT volume (if you use the -f switch).
Would love to hear your feedback – my posting of the source code for the filesystem itself generated a bit of interest, but have not heard anything back from any Dreamcast hackers though.
The “punchcard” tool shows what times commits are made. And here it is for the Linux kernel:
With more and more additions to the kernel coming straight off git pulls, this pattern must reflect rather more than Linus Torvalds‘ own office habits.
It looks like the image of kernel hackers as nerds pulling all-nighters with the help of “rotary debuggers” (see Hackers: Heroes of the Computer Revolution for more of that) is well past its use-by date: building Linux is just a job.
A few attempts to get this in the kernel mainline then followed. It was a bruising experience and unsuccessful. But I am about to try again.
I am a bit more confident this time – not least because I have written some userland code which will allow anyone to test the filesystem out, whether they have a VMU or not: mkfs.vmufat is now available at GitHub – https://github.com/mcmenaminadrian/mkfs.vmufat/blob/master/mkfs.vmufat.c
Secondly I do think I am a better coder thanks to the MSc and have put some effort into fixing the filesystem code itself.
But we’ll see, hopefully tomorrow, how it goes down.
- One of those debugging nights (cartesianproduct.wordpress.com)
- Filesystem works (cartesianproduct.wordpress.com)
- Fan Made Sega Dreamcast Revival Has Me Wishing Sega Still Made Consoles (devicemag.com)
- Fedora puts back Btrfs deployment yet again (h-online.com)
- Maintenance of Linux kernel 2.6.32 is slowing down (h-online.com)
It seems the GitHub message is genuine, though looking through Twitter suggests there is a lot of unhappiness about the way the message was spread, its timing and its content.
Not sending such a message from your own mailservers also looks very foolish to me – checking the headers of a dodgy looking email is, I am sure, the first thing many of us do when we are not sure.
Anyway, as GitHub don’t tell you – here is how to do what they are asking (approve as valid your SSH keys):
ssh-keygen -lf ~/.ssh/id_rsa.pub
And check the output against GitHub’s public key.