An internship diary by Adam Yeats. Adam took part in Dharmafly’s first summer internship, when three students joined us at the Lab for the Recently Possible to gain skills in developing experimental web applications. Some of their observations and reflections are posted in this blog.
September, 2012 – week 13
I first got a start in web development when I must have been 10 years old or so. I committed all the usual web design atrocities people joke about about these days, and I had several awful little websites littered across GeoCities. I went off and did other teenager-y sort of things and then a couple of years ago, I had a little epiphany and decided I wanted to come back to university and finish what I started.
I’m extremely glad that I did.
Coming back to university, learning web development and engaging with the Brighton web community has opened countless doors for me, and one such door opened for me when Prem kindly offered to take me on as an intern for the summer. This must have been quite a risk for him; I had a limited grasp of JavaScript that I had gained from my first year at university, so it was difficult to say where I was going to fit in the Dharmafly ‘ecosystem’. However, before too long, work for me and the other interns started to pile up.
Looking back 4 months, the difference between the programmer I was then and the programmer I am now is equivalent to night and day. Read More »
An internship diary by Chris Newton. Chris took part in Dharmafly’s first summer internship, when three students joined us at the Lab for the Recently Possible to gain skills in developing experimental web applications. Some of their observations and reflections are posted in this blog.
August, 2012 – week 8
So what have I been up to? Well for one thing I’ve been working through a lot of issues. GitHub issues that is. Apparently building things that people use means that when they go wrong or could be doing things better, you’re the one that has to fix them or something.
Oh and documentation too. What’s that? I’ve completely changed the way something works and haven’t documented it? Can’t you just magically figure it out or something? Ok fine, I’ll write some stuff explaining it.
But what new code stuff have I learnt? Read More »
An internship diary by Aaron Acerboni. Aaron took part in Dharmafly’s first summer internship, when three students joined us at the Lab for the Recently Possible to gain skills in developing experimental web applications. Some of their observations and reflections are posted in this blog.
August 2012 – week 7
“A good programmer is a lazy programmer” is a term which rings true in the web development community. Web applications and software in general are made with the reliance on pre-existing libraries or web APIs.
The software I write indulges in the use of somebody’s shared code with good reason; the code usually does one thing and does it quite well (the Unix Philosophy).
However you may eventually reach a stage when you can no longer rely on pre-written libraries or web services to help you. This may be because your tool no longer exists or never existed in the first place.
At Dharmafly I feel there is a tool based approach to creating the software. We’ve written our own personal substitutes for two existing web services and I am very content with their outcome.
For one of our current projects we wanted to make use of the Google Social Graph API, but it has been recently discontinued. We created a service that has similar functionality, based on the rel="me"
HTML attribute. In another project we were using YQL but found that it to be too unreliable. So we then created a similar service which had similar basic functionality. We’ll be open-sourcing both tools.
The significance of this software is not that it helped us make our intended software (although it did). It’s that we now have tools for future projects and the future projects of anyone else who would like to use them.
An internship diary by Aaron Acerboni. Aaron took part in Dharmafly’s first summer internship, when three students joined us at the Lab for the Recently Possible to gain skills in developing experimental web applications. Some of their observations and reflections are posted in this blog.
July 2012 – week 3
At Dharmafly, and modern web development in general, there is great favour in using Git and GitHub to manage software projects collaboratively.
Git is a complicated program that I have yet to fully understand. In fact I feel the majority of developers using it are the same.
Regardless of that I feel that I’ve made a good deal of progress using the software, and feel more confident working on a software project collaboratively.
On my first proper project using GitHub – Planet.js – the outcome was messy. The git messages are inconsistent and branching felt more like an adventure that my source code would not survive. My remedy is often to reclone the project if git became too cryptic. I do that far less often now!
I now feel that I have bettered my understanding of the appropriate git flow for making software changes within a team.
The most significant of these flows is making pull requests. I can really see their benefit now and GitHub’s GUI for them can really give insight to somebody’s feature changes.
This understanding of pull requests had a really good effect on me recently. Crypto.cat is a project I really admire and I’m looking at ways that I can contribute to projects similar to it. I managed to fork and contributed a pull request that was accepted with a thanks from the author.
Over the summer months, we’ve been blessed to have had three incredible interns with us at Dharmafly – two new graduates and one first-going-on-second year student, all from the University of Brighton’s School of Computing, Engineering and Mathematics.
We’ve been creating new tools and experimental applications in our little future retro spacepod at the Lab for the Recently Possible, at the top of The Dock in Brighton & Hove. In the process, everyone’s been learning a whole lot more about application engineering, open source software, JavaScript, API design, Node.js, Git, and more than anything else, about what it takes to steer a project from idea to implementation, working with others along the way. Read More »