Well, work is going well. So well at keeping me busy I've not really made time for my own code. But hopefully that should start changing soon.
The status script has had the bulk of the back end code done now, it mainly needs all that nice user interface stuff, some good caching and then a double check for bugs and then it should be done. So give me another year or so and it might be finished :P
See it in it's current horrible state over in the sandbox: http://sandbox.palmnet.me.uk/status/
As for other work, well, I started sorting out palmnet version three. Possible name change. Total design overhaul. New back end. New release system that might encourage me to release things and get on with projects. All juicy stuff.
Nothing to see yet though as it's currently sitting on my PC as a collection of barely filled folders with not much more apart from a logging system.
Other than that, I bought a Chumby, along with Phil from PWnet, and it's excellent.
So far I've only whacked out a quick and dirty widget to display themes from Kuler. It's very rough, so might get re-written in the coming weeks, should I get a chance, although it's currently sat at 4th most popular widget of the week!
I'll post again soon with more information about various things later in the week, honest!
It's been so long since I last posted here I've almost forgotten how!
You all have no idea how much nagging I've had from Kevin in the past couple of months to blog >.<
So, after all that time, here it is. The bumped blog post of doom!
Face Detection & Mandelbrot
A few weeks ago now Kevin was asking me how to do face detection.
This brought my old image filter script back to mind, as it was initially meant for the first part of a face detection script that used a mean filter to smudge up faces and make colour matching a lot easier. I never really got that far however, so my script remained just for filtering images.
Kevin had found an article on a much simpler method that just used plain colour detection methods but was having an awkward time implementing the concept into working PHP code that could cut out everything but skin tones. After asking me to take a look, and me putting it off for a day or two, I sat down and worked out a small and simple implementation of it.
I'd like to add better features, like using the result of this script to find individual faces, border them and then run feature detection on the original image to cut out false positives, try to get the whole face instead of cutting out eyes/mouths, and to get orientations and such, but that would require more free time than even I have!
The simple implementation is: http://sandbox.palmnet.me.uk/fd.php?face=http://www.centocor.com/centocor/images/people-1.jpg
I did have enough free time however to help Kevin with another PHP/image thing he wanted to try but couldn't get quite right.
He wanted to draw the Mandelbrot set with PHP/GD and so when it didn't quite work out and the maths got sticky he asked me what I knew about the Mandelbrot set and fractals.
Maths was never my strong point and I didn't even take it pas AS Level. Thankfully I know lots of mathsy people and still do my own learning from the webernets and books from the uni library when I get a chance.
So complex numbers were easy and the Mandelbrot set equally so.
After an hour or so of tinkering in Notepad++ I had something that roughly did what it was meant to:
Source code is available: http://sandbox.palmnet.me.uk/testbox/codebox/index.php?module=snippet&id=705
I got my lovely Arduino through the post a month or so ago and have slowly been accumulating components that are either cheap or can be scrounged from companies as samples.
With what limited supplies I had, a potentiometer, MAX2221 and a simple 8x8 LED matrix, I was able to make a lovely version of pong however!
See it in action on Youtube: http://www.youtube.com/watch?v=7uOF9KcOp8g
Code for the arduino: http://sandbox.palmnet.me.uk/testbox/codebox/index.php?module=snippet&id=901
I have also started work on a version of the copter game for the arduino using LED matrices, but since starting work I haven't had much time to finish it off.
London & Work
As mentioned before, I'm a university student who has a placement year where I go and work in the industry that I hope to end up in. And that year is now!
I started work a couple of weeks or so ago and so far it's actually really good. The work seems to be about my level, the people are interesting and definitely know their stuff; And despite the fact everyone else there is from Surrey university I know almost every bodies name now and have fitted in well
London is a bit crap however. Busy, expensive, smelly and generally a bit lame so far. But the flat I have with Phil means that things are cheaper than commuting and more interesting.
I will post about what I'm actually doing at work when I get round to doing something. So far I'm stuck in training, and will be for a few weeks yet, and won't really be doing much apart from reading, testing things out and practicing. Lots of crazy XML stuff like you've never seen, Oracle database stuff which is new to a poor student like myself who's used to MySQL and SQLight, and some bespoke back-end server software which though utterly ridiculous and archaic is very good what it does, or so I hear anyway.
If I do anything fancy I might even post the code here as I'm not sure anyone outside the company and a couple of oracle conferences will have ever seen anything like this, I know I certainly haven't.
I finally got my university results back for the second year last week. And while not great, I did pass with a 2:2 which is pretty good considering the sheer volume of rubbish business modules I had to do this year!
Phil has enlisted me to code some stuff for a new project of his, currently under a codename of 'Enframe' which we took from a folded t-shirt and prefixed an E to.
Seems like a fairly reasonable idea, and I hope to crank out some code for it shortly to see how it would function, but until we decide exactly how it'll function and if people are interested I won't bother saying much.
But if I'm coding anything in the next few months that isn't for work then it's probably going to be this.
Another thing Phil has told me to do is my status script.
This should be a nice, feature rich, replacement for the Status2K script that he currently uses to monitor the server, which runs this site and served up this blog for you
The main advantage of my script would be the customisation as Status2K isn't free, and so has encrypted source with ionCube, meaning you can't fix any bugs that their lazy support guys can't be arsed to fix. And as the script will most likely just be for us we can make it very server specific and get some interesting stats
Man, captchas suck.
I think we all agree that captchas are fairly useless and more often than not cause more annoyance than good.
Most captchas are easily broken if someone sets their mind to it. Especially the one that came with this blog script! And even if they do stop bots they also stop blind or visually impaired people from using your system too.
But they are an unfortunate necessity, especially on the high traffic parts of my site like the mini polls where there's currently a captcha I hand coded especially for the mini polls. And so far I'm shocked to say I've not had any spam on there except the usual human spam.
However, today I have constructed an uber-captcha, which I quite like. It is slightly hard to read though.
This new one uses just PHP, no separate app (not possible on this server) or anything like that, and it generates an animated GIF file where every frame is totally unreadable, but when animated together it becomes readable to the human eye.
That's the idea anyway. I might have gone a bit overboard with methods to try and stop people using image filters on layers to get readable text again and it's now fairly hard to read: (hit esc in Firefox to stop it looping and see how messed up a single frame is)
Anyway, feedback would be great on this. Any ideas on what I could do to make it more readable, yet still being awkward to crack.
Also, anyone who cracks it with their own code (no script kiddies) wins a free sandwich Fancy code or code in an esoteric language gets you a coke to go with your sandwich!
To play around with it and see what percentage of them you get right go to http://sandbox.palmnet.me.uk/gifcaptcha/, let me know what scores you get in the comments.
The stats are in from last month and they're pretty good for such a small site like this.
As of 31 Mar 2009 - 23:59 I had:
- 23, 332 uniques
- 1, 317, 979 Hits
- 908.78 MB Bandwidth used
Though that only sounds like a small amount of bandwidth, roughly 85% of hits were to the bar images from the mini polls, and they're only 200 bytes.
So to get over 900MB from that is fairly impressive!
I don't think I'll ever get stats as good as that again so I'll have to thank Rob Manuel, co founder of B3ta, who got me 99% of those stats for using my poll script and for crediting me on e4 where he used the results gathered by the mini polls.
If anyone else uses them for something interesting do let me know
Like I said before, if anyone uses them for random or cool things please let me know. And don't be shy to suggest a feature, let me know of a bug or even propose a whole new project to do if you think it'll help you or others.
I've been carrying on with work for a new version of Palmnet. So far I've re-done all the work I had before to make things easier, play together nicer and to implement some of the things I've learned lately from reading online and hearing things in lectures.
Lots of work will have to be done on the way all my projects are handled though as currently it's a total free-for-all when I make a new project, with no set order, file placement or even links to it. All that will have to be changed to conform to a while heap of new rules I'm setting for myself. And a lot of projects might get some re-writes and updates so that they can be put in the new system and be presentable if open sourced
Somebody on a forum I go to the other day jogged my memory on the new shoutbox system. I did a little bit of work on it but am kind of stuck with how I can do plugins for the image rendering script. If anyone knows much about that kind of thing, mostly just theory of plugins and modularity, please get in contact!
I seem to just have functions that need to go everywhere, data that needs to get altered and all sorts of crazy things. So it might take a while yet. Other than that, there is an API that's almost done, the RSS is done, the basic image rendering script is done, the posting script is done, the filtering system is done...It's all coming along, slowly.
There are a few other things that I'm currently working on for uni too which are taking up quite a bit of time, especially team projects and the joys of ASP.Net... So I can't fully dedicate all my time to coding for myself like I used to. Which sucks, but priorities are priorities I guess.
The other random projects I'm working on in secret are coming along nicely though, and I thought of an amazing one to start today, though it requires C# skills...skills which I might not have yet. But if/when I do, prepare for massive amounts of blogging full of awesomeness
Happy 1,000,000 hits day!
For the first time in Palmnet history I've gotten over 1,000,000 hits per month.
Way back when I think I somehow managed 14k or 15k in uniques, but since I forgot the exact number the new record number of uniques is currently just past 15,000.
At the end of the month I'll have to blog again and see what those numbers have climbed to. But considering we're only 60% through the month I'll cross my fingers and hope for more lovely webernet surfers to come and visit.
In other news
Loughborough University Computing Services are idiots. They blocked ports for remote access to SQL server and FTP for the server we need to access remotely over the Easter break.
&guot;But that won't take long to fix!" I hear you say, but according to inside sources it could be over a week to open two ports, and then over a day for settings to propagate across their various firewalls
Oh, and T-SQL for SQL server 2005 is really, really, inefficient and backwards.
Joys of university projects!
Last year on November the 23rd I had a job interview with the company I'll be working with next year.
It was only my second time in London, so fearing the worst I got trains and the London Underground so that I'd have an hour to spare for delays and getting lost. Thankfully I got there quicker than the train should have, I found the underground really easily and got to the building I was meant to be at about one and a quarter hours early!
With my spare time I thought I'd be a bit touristy and check out some of the sights that were within walking distance of my interview. I took photos on my lame camera phone of things like Big Ben, Palmer Street and a few mangled shots of Westminster Abbey.
Then on Flickr earlier this month I got a message asking if some company could use my (frankly pretty poor) photo of Westminster Abbey for use in some tourist map thing I'd never heard of. Being the kind fellow I am I agreed.
Today I've been told that if you go Here you can see my little photo and a credit to me! Apparently it also works on the iPhone and some other phones too, so you can tour round London and find out all the history, information and maps.
Thought I'd let you all know about them as they were nice enough to include my photo, and to ask permission too
Long time no post!
Seems to fast be becoming my default intro to all my blog posts!
This is actually the first post in 2009, over 2 months since my last post. Since then much has happened to me and my plans and unfortunately not all for the best.
General project plans have been delayed by faffing about with placements, new university semester and year long project deadlines. Some projects, like the shoutboxes are currently on hold while other, like the new version of Palmnet, are still in the pipeline and have jumped the queue.
That isn't to say that shoutboxes will never be finished, just as it stands my future seems fairly busy and I'm not sure where to squeeze them in. But as it's a fairly popular project I dare say I'll squeeze it in soon enough and hopefully get the damned thing done and available for download soon so that the 3 of you, you know who you are, can get off my back and bask in the glory of fresh code.
I've also been tweaking some of the current Palmnet scripts lately, updating things like the raycaster (which still refuses to work) to show a debug view which is pretty handy and should make fixing it properly fairly easy when I have chance to sit down with a pencil and paper and sort it out.
The minipolls also got a bit of an update today with a few new features requested by none other than Rob Manuel, co-founder of the renowned B3ta.com, who then made 2 polls of massive proportions and almost killed my server with the load put on it. Interesting server statistics would be the 309.3% load it was reporting on the intel(R) Xeon(R) CPU 5130 @ 2.00GHz processor and the 9.4 requests/sec, which though it doesn't sound like much it caused enough lag on that server for database connections to time out and for me to receive 54 emails letting me know about it!
As for Palmnet v3 I'm still researching various options for the back end. The choice between coding it all myself and using a framework is pretty tough, trading enjoyment for time. But I did start some preliminary work on the database so it can cope with the stress and complexity of the many projects linked together. I'm also probably going to develop a sort of micro framework to lace it all up which should be fairly portable for use on top of other frameworks and systems so I can keep the handy functions together for use in future projects.
And the most important new planned feature is a project time line, so I can plan ahead properly and set goals to guilt trip me into working more often on what I should be and keep me away from time sinks like facebook and Google reader.
The job offer I mentioned back in my Christmas post was accepted by me and I shall start working for a company called Fivium down in London starting in July. If anyone has any advice on living in London it would be much appreciated as I'm a mere small country town boy and have only been to London twice before, one of those was for the interview.
The job should be awesome, pay sounds good, company seem great and the work seems to be interesting. However, it will probably mean less blogging than usual because of working 9:00-5:30 and I also had to sign official secrets act, so I can't even blog about some of the work I'll be doing which is a shame. But it's all for the good of the government and such, so it's for a good reason.
Also, congrats to Ben on passing his theory
It's Christmas! (Almost)
Anyway, as the season is upon us I get a nice break from university, from the 12th of December to the 12th of January. This gives me a bit of time to actually do something instead of talking about things I'd like to do.
Jobs / Site plans
At university these past few months I've been hunting for a placement job.
For those not in the know, an industrial placement is basically just a year out working in the industry you hope to end up in. My university is extra nice and gives us a whole extra diploma for taking a placement, which is always handy.
So I updated my CV, customised it for each employer, put it in multiple formats and so on. Sent it off to 4 companies, had 3 replies so far, 2 interviews and one job offer so far. The one thing I noticed was that most applications wanted a link to a personal website, if you had one. Or it would at least be brought up in interviews because of the work I've done and the places I applied to.
So I've actually started to have important people looking at my site and judging me based on it...not a good thing when the site is as poor as this one currently is.
My solution is to start working on Palmnet version 3 (Pv3), and to actually start working on it this time because I have a good reason to re-code it all.
Plans are as have been mentioned a few times before, but hopefully with more finesse that would make potential employers swoon at the simplicities of the design and intricacies of the code. As I have two weeks after Christmas that were planned for revision time (5 exams coming up at the end of Jan/start of Feb) I shall no doubt start coding then to help me relax while revising.
Kevin, the skilled photoshop ninja he is, has been cranking out some rather fancy pants designs and an awesome logo too. So expect the site to actually look good when compared to the past four years of my creative design skills.
I'm a bit of a Grinch as of the past couple of years.
After working in a pub once over Christmas I now utterly detest all Christmas songs. Except Fairytale of New York which is just plain awesomeness all year round.
I'm also too old now, according to my parents, for those cool presents I used to get (19 is not too old). So now I'm dreading crappy gifts and just wanting the money instead so I can pay bills and eat!
Not much to say other than that really.
Bah Humbug! But yay for the time off uni
As is fairly traditional, whenever there's a holiday I tend to come up with a few little projects.
This year I might not start anything new and instead work on re-designing and re-coding all my old projects to bring them up to date. Everything currently is so inconsistent and just needs an overhaul to keep them in shape.
A few old projects that never got finished in the first place might have to make their way to completion too if I can get time. (Shoutboxes being top on my priority there)
I do have one project up my sleeve, but it is a rather big one so not sure whether I'll start it now or wait until the other work is finished, have to wait and see.
When I joined uni over a year ago I knew it would take up lots of my free time with work and socialising, and last year it did just that. But this year is even more manic than before!
So far I seem to have more lectures this time round, or at least more 9am ones. Which drains my energy before I've even had lunch.
Then we have exams looming on the far side of the Christmas break which is starting to be in the back of my mind now with revision starting to make a mention in lectures too.
We have two group course works and both are pretty dull. One is using SPSS to do some analytics stuff and the other is a tiny bit of code and lots of write-up for a timetabling system. It's nice to have group courseworks to spread the load, but they're just so dull this semester! However the main reason I'm posting this at this time is because I just finished some code and editing the writeup at +3am >.<
Not to mention job hunting too. Next year I'll hopefully be taking a year out in industry to gain an extra diploma and another 3 letters after my name. But job hunting takes more time than I thought. On the up side I do have lots of cool freebies from the careers fairs.
Oh, and I'm a member of two societies again which though fun they do take up time
Anyway, this mostly boils down to my excuses for not posting for ages and when I have been posting lately, not having much to talk about.
So I'll do a short list of random things instead:
Not been working on them too much but whenever I open Notepad++ I have it set to open about 12 shoutbox files with the To-Do list at the front to remind me.
I do hope to take some time off over Christmas to revise for January exams, so I might use the shoutboxes to have a break and keep my mind sharp and hopefully have it ready for some sort of release around then.
They went dead for a short while, so much so that I didn't even check my logs for a while.
Today though it says that this month has seen well over 100, 000 hits. Wow!
New Palmnet record!
As it seems fairly popular I might try and expand/open source it soon too.
This Christmas will be the first actual break from university / work for about 2 years. So I plan on actually enjoying it and having a bit of a break.
A break for me though means programming into the early hours on all sorts of silly things, so watch this space. I do have a few plans on little projects I'd like to just knock out for fun but feel free to add any suggestions. (The shoutboxes don't count as a suggestion, before Kevin asks :P )
Usual long time no blog and larger catching up post however this time I have a genuine reason why I might appear to have been dead for a while.
I started my second year of university here at Loughborough (Sunday Times University of the Year ) recently and moved out of halls and got a house. Which though awesome it did mean I had to set certain things up. Gas, water, electric and all the less important things were easy. But the most important thing of all, the internet, took about 2 weeks just to get installed!
So it’s not out of choice that I haven’t been replying to emails, checking forums and being on MSN.
However, in my time offline I have done a little work on the much anticipated (ha shoutboxes.
So much work that it's almost in a stable and usable state, see here for a demo:
As you can see, it's still nowhere near feature complete, let alone finalised. But it is at least working based on the underlying code I've done. So hopefully things left to do on my 100+ item ToDo list will be easier to code and everything should go a bit smoother now.
Other than shoutboxes I haven’t got much to report, general first week of university activities kept me busy.
I do plan on doing either some fancier image things or perhaps update the CPU emulator if I get chance soon. And I’ll hopefully be starting the new Palmnet soon because the current version with it's masses of non-centralised and segregated projects is starting to get in the way of progression. So updates are badly needed.
But uni work this year is far more than before, with two group projects, one lasting all year, and I have to find a job too as I'll hopefully be on a placement year. That coupled with normal work and day to day house/uni/society things I never seem to have much time to myself to sit down and code. But I'll try and make time. Mostly because Kevin will tell me off otherwise!