The Web Services blog only started in April but in that time we’ve posted over 100 entries. As seems to be common around these times, I’ve done some digging into our Google Analytics stats and come up with a top ten list of popular posts. First the list then maybe I’ll talk a little about them!
So what does this show us? It shows the continued interest in Facebook. It’s just over a year since Facebook opened the doors to non-students and in that time growth has been massive. They’ve continued to innovate with their developer platform but have perhaps misread their users on the Beacon advertising system.
About half of the top posts are technical in nature including many about our use of the symfony framework. In the last year we’ve developed several symfony-powered sites including Hi, the applicant community and the brand new GO portal. Work is well underway on a couple of new parts of the corporate website – look out for more in the new year!
The project will involve developing and implementing systems for managing information for use by staff, students and external partners. It will build on existing systems such as our GO portal and the developments we’re doing for the corporate website. The Faculty are fully behind the developments and are already working on evaluating the information they currently have which will let us get off to a running start in the new year.
At Edge Hill we try to develop innovative approaches to projects, are quick to adapt and flexible to changes which enable us to create the best websites we can.
This weekend I took a trip up the M62 to Leeds. No, not for the SSWG shopping trip, I went for a day of technology! That’s right, I experienced my first BarCamp!
BarCamp is an ad-hoc gathering born from the desire for people to share and learn in an open environment. It is an intense event with discussions, demos, and interaction from participants.
BarCamp is a network of unconferences organised all over the world. They’ve been going for about two years and are growing in popularity. Yesterday was BarCampLeeds, held at Old Broadcasting House, the former BBC studios now owned by Leeds Met University.
Since BarCamps are presented by and for the participants, and this being my first BarCamp, I “had to” do a session. After racking my brains all week I ended up finishing a presentation at 1:30am on Saturday morning. The subject was basically an introduction to symfony and why you should use it, combined with some case studies of the work we’ve done here at Edge Hill (with some slides borrowed from Alison’s IWMW talk!)
With nine timeslots and up to four rooms in use at any one time there was a wide variety of subjects ranging from entrepreneurs imparting their experiences to Live Coding demonstrations of Ruby. I tried to mix some business talks with stuff about web technologies and found it all pretty enjoyable.
The highlight for me was Tom Smith talking about “Stuff I Know”. The slides are online but they’re unlikely to make much sense. The line that sums it up was “pair programming is a bit like bran… you know you should eat it but you don’t really know why”. Apparently if you don’t have a real person to pair with, talking to the teddy bear is a good substitute.
I’m glad I went and I’d recommend it to anyone with an interest in technology (not necessarily a web focus). Thanks to the enormous generosity of the sponsors the whole weekend was pretty cheap for me (although the Etap Hotel proved that you really do get what you pay for… not impressed) so the journey was well worth it.
We are currently looking for a Web Applications Developer to join our team.
Full details about the post can be found on our website but I just wanted to add a few words about Web Services and where we are going.
Why join us?
At Edge Hill we’ve taken an innovative approach to Web Communications and our sites reflect this. The Hi Applicant Community website demonstrates our use of web 2.0 technologies and our commitment to opening up communication with our users and keeping informaton clear and simple.
We’re also committed to developing services based on user requirements and our Go portal (to be re-launched later this month) reflects this. Students (and staff) will control the information in their own portal based on user preferences.
Why do we want you?
Our applications team is growing. Under the leadership of the Web Applications Project Manager, Mike Nolan, the team will be re-developing our corporate website in coming months to create a much more functional and usable interface for our users. Building on from our experiences with the Hi site we want to ensure that we can serve information to the user dynamically and position our website as the best in the sector.
We are looking for a strong, creative developer to work on these projects to ensure we can meet our targets. Our projects are creative and innovative – we are quick to adapt and flexible enough to change when required – we want someone who can work with us in this fast paced environment.
Why Edge Hill?
We’re the fastest growing University in the Country. We are flexible and innovative and when it comes to the web we’re doing some really exciting stuff. We’re a growing team and we have a clear vision of where we want to be.
This could be a bit tricky – I don’t really know of any forums directly related to HE web services! I subscribe to a couple of JISCmail lists and try to chip in whenever I feel I have something to add but there’s something different about forums.
One forum I do post on is the symfony project forum, although I have to admit that I’ve been a bit slack lately. Forums are a very useful source of information if you’re closely involved, and the symfony one has been great for picking up ideas and best practices, as well as giving something back to the community by answering other people’s questions.
I need to pay more attention to forum posts to 1) participate in the conversation and 2) identify questions to answer or topics to write about. I’m going to try to do at least one post to a forum this weekend.
I should be sure to add my blog URL to my signature.
In the meantime, if anyone knows of good forums related to what we do in a Web Services team (I’m assuming here that you know what we do in Web Services…!) then feel free to post a comment.
It sounds like it should be accompanied by cheerleaders chanting and waving pom-pons but that might be a bit too much. Go PHP5 is a new(ish) community effort to encourage the wider deployment of PHP5. Although it’s been around for years, most ISPs and hosts still deploy PHP4 by default, and often don’t even have the newer version as an option. The draft proposal explains the problem:
Web hosts cannot upgrade their servers to PHP 5 without making it impossible for their users to run PHP 4-targeted web apps, and have no incentive to go to the effort of testing and deploying PHP 5 while most web apps are still compatible with PHP 4 and the PHP development team still provides maintenance support for PHP 4. The PHP development team, of course, can’t drop maintenance support for PHP 4 while most web hosts still run PHP 4.
For software developers, especially open source projects, there has been a tendency to cater towards the lowest common denominator and so many large systems – WordPress and Gallery are still full of clunky old style PHP code. Even in the commercial sector where developers have more control over their environment, they still have much less choice over host if choosing PHP5. For years PHP has had a reputation for shoddy, insecure code, due in a large part to amateur developers producing poor quality software.
While PHP5 still isn’t perfect, it is a vast improvement offering real object orientation and a decent stable environment to develop under. The web framework we’re using at Edge Hill – symfony – was designed from day one for PHP5 and that’s one of the reasons why I chose it over Cake and other frameworks. The only query I have is over the choice of PHP 5.2. While it makes sense for hosts installing PHP 5 for the first time to pick the latest version, existing PHP5 deployments will usually be 5.1.x.
The symfony development community is currently discussing whether to drop PHP 5.0 support, which I’d certainly agree with, but I don’t think it should drop 5.1 as it’s still widely deployed. Part of the blame for the slow move to PHP 5.2 lies with the Linux distros – Novell for example are shipping 5.1.2 with SLES 10. Yes, you can upgrade manually, but there’s a whole lot of dependencies that suddenly break when you start down that line. RedHat, Novell and other commercial Linux vendors are paid for their systems, and the “stable platform” argument only goes so far – it would also be nice to have up to date software!
The new Edge Hill jobs website went live yesterday. It might not look like much has changed but it’s a complete rewrite of the old system and paves the way for more substantial changes in the future. RSS feeds are one thing that has been added so you can now subscribe to a feed to be notified of the latest vacancies as soon as they go online.
Enough of this wordy marketing/writing-for-the-web stuff that Steven is writing about – we all know that everyone just wants to know about programming! Okay… maybe not everyone wants to know about code but I thought some people might be interested to know a little bit more about how we’re developing web apps here at Edge Hill. I mentioned previously how we’re developing sites using symfony, a web development framework and I’ll go into what this offers us and some pointers to further information.
Symfony is a framework, written in PHP which assists developers in creating rich web applications. It provides a wide range of features that previously the developer has to write themselves or manually integrate several third party systems such as object models, MVC separation, caching, scaffolding, Ajax interactions and much more. By taking away overhead it leaves the developer able to concentrate on the functionality of the system and should lead to better applications.
Symfony takes influence from Ruby on Rails and other frameworks in its design and actively promotes well written, reusable code. The MVC separation allows you to maintain database (model), templates (view) and logic (controller) separately meaning parts of the site can be written by several members of the team. ORM means that writing SQL is a rarity. Adding Ajax to produce slicker user interactions is easy and done in a way that maintains standards compliant and accessible HTML.
Currently two major sites have been developed using symfony – Education Partnership and Hi – there’s a couple more smaller applications using it and a few bigger ones in development at the moment. For these sites symfony has allowed pretty rapid development – under a month in the case of Hi – of complex websites. Tools for handling technologies like RSS are integrated with symfony in the form of plugins which has allowed us to produce a couple of different feeds plus seamlessly merge the forum and blog tools with the rest of the Hi site.
One of the best features of symfony is the admin generator. This allows us to quickly create interfaces to allow other people to update websites. This is being used for a couple of questionnaires and much more complex systems too – if you work or study at Edge Hill the chances are you’ll come across the admin generator in action very soon without even realising it.
If you’re interested in finding out more about symfony then there’s a brand new tutorial available on SitePoint which gives a great introduction. The symfony community is really good too with an ever growing selection of plugins (including a couple released as a result of work done here at Edge Hill) and a supportive forum and mailing list.
“Release early, release often” has been the mantra of the open source community for years and refers to the idea of getting something out to users quickly so that they can feedback, help find bugs (yeah, like my code has bugs!) and shape future development of the software, and it seems to work. Mature open source software is generally stable and secure, taking advantage of many iterations of the development cycle. New software often has features not found in established packages because they’re able to adapt quicker.
So what can we as web developers learn from this model? There’s sometimes the tendency to hold off launching until everything is perfect but do we need to do that? Sometimes yes – incorrect information or security problems are show stoppers and there’s no excuse for releasing bad software but does it matter if a few features from the “desirable” list are missing? Probably not, and the benefits of getting the system out there and used outweigh that.
So that’s “release early” sorted out, but that on it’s own isn’t enough. We must be prepared and able to back that up by “release often” and we’ve got plans here too. On the software side of things, developments of certain applications has moved to PHP running on the symfony framework allowing for faster application development. We’re starting to use some code management tools such as subversion and Trac to keep track of bugs and feature requests and more easily allow several people to work on the same project. The department are investing in new server infrastructure which will allow better testing prior to roll out of changes as well as faster and more reliable access to the sites. Finally, we’re committed to pushing the kinds of services we offer; adopting new technologies early when there is a benefit to our users and not being afraid of the odd bug if it means we’re doing something good.
If you follow blogs in the web/HE community then yes, I did borrow the title from OSS Watch’s recent post, but I was thinking about it before they posted!