The students have almost finished their 11 week journey in building their web application and potential startup. It has been an amazing experience seeing people with no prior programming experience get used to using third party libraries, gluing them together to solve a domain problem, thinking about the RESTful architecture of their web application, and debating the merits and performance of different algorithms or methods in solving the same problem.
In order to achieve these results, students had to master two programming languages, build tools, solution stacks, libraries, external APIs, markup languages such as HTML/CSS, preprocessors such as LESS, frameworks such as Codeigniter and AngularJS and of course computer science and software engineering theory. One of the students mentioned that he wanted to get to the stage, where he could look at any new library or programming language or third party API and know where to start to apply it. With regards to this, two problems always exist when a developer finds something new, firstly that there is often assumed knowledge even in the documentation, and secondly where to find the assumed knowledge. To overcome these two problems, the students had to learn a couple lessons not so much in technical programming, but an outlook on life. Firstly to not be afraid to dive into the rabbit hole of the documentation or wikified knowledge base. It is a learning experience in itself and a rewarding one, which leads us to life long learning. Often the answers are hidden under several layers of links, however along the way you'll discover nuggets of knowledge. There is of course a large amount of noise on the internet, so I've had to help them locate the signal, but it takes time to be able to quickly filter out the noise from the signal. Secondly was not to be afraid of errors. That is to understand that the computer uses errors to tell you what is wrong, and it is also how they lead you the right solution (a philosophy subscribed by TDD practitioners!). A silent error is the worse error.
It's been a hard-won journey for the students. Some were grappling high level abstraction, functional programming, object orientation, event driven programming, state management, communication architecture, design patterns and spherical trigonometry all while studying full time at university or having full time jobs. There is a quality to the satisfaction, when you start to see connections form between different software stacks and have it all work in front of you. Yet their journey has not finished. Their applications will require polish after the course, and of course there is always more to learn, more technologies to discover, and more lives to change.
We had a meetup last week with all the mentors and advisors, current students and potential future students. It was good to catchup and discuss the future of Polycademy. One thing that came up was an end of course demo day event for the students.
We decided to organise two events, a practice pitching session for the Polycademy students on Saturday 13th April, which is open for anyone to participate. Anyone who's interested in attending Polycademy should also come and check out the work.
Secondly is the big demo day event, and this is basically for all entrepreneurs who are working on their technology startups to pitch and showcase to an audience of other entrepreneurs and people who are interested in tech startups (I'll also be inviting potential employers). This is of course open to all people, it will be an unconference where the audience can act as lightning speakers or have full presentations on the web application or other projects they have been working on. This big event is scheduled for Friday 19th April last day of the course for cohort 1. And food will be provided.
Oh and lastly, Polycademy is setting up a meetup group dedicated to web, mobile and desktop application development. So join up to the meetups to discuss interesting developments in technology!
Don't forget about the blogs of the students! They'll be up on an alumni page.