published: January 7, 2011 (ed. March 17, 2012) — tags:
About this site.
A year ago, give or take, I decided to put my portfolio online, because some say, that anything which can't be found online obviously doesn't exist at all. Since then, a static page was here, hosting some of the things I had done during my architectural studies. Fair enough, but it didn't really show any of my other interests, i.e. programming. I've written quite a bit in bash, python and C++, so I was tempted to create a real web site — even as a proof of concept alone. I've read that writing a web framework is considered the new
hello world, but I didn't go that far (at least yet). Instead, I've picked Django, a popular framework written in the language I really like. Reinventing the wheel wouldn't bring many benefits — you learn enough just trying to figure out how Django does things internally. On top of that, I wouldn't be able to criticize Django if I didn't try it first. So I went with it and now I have a base for comparison, a quite strong base. After all, this framework has been deployed on production systems world-wide.
Seeing so many bloated sites around, I decided to go with simplicity. Here are the ground rules :
- no image-slicing layouts or layouts by tables, only pure CSS,
- no fancy fonts — only readable "web-fonts" that are present on most systems, I think it's finally time to dump the default Georgia/Verdana/Arial pack, especially since Adobe has released a great looking Source Sans Pro font which is free and open source! (updated September 6, 2012),
- no variable width page elements or scaled images, That's wrong, pages should and will adapt to the dimensions of the window (updated March 12, 2012),3
- no Google analytics code or random adverts,
- no relying on external web services and script providers,
- All links and navigation elements like buttons shall be blue, except for the top navigation bar, which should be obvious to anyone (added on March 12, 2012),
- no stuff that brings no added value
- and did I mention no special treatment for Internet Explorer 6?4
I must admit, these rules make my job an easy one. I don't have to spend time on adding special effects or composing the page in one Adobe application or the other.
The choice of language.
Site's domain is .pl, navigation is Polish or English, but text is English… What the hell?
It's not a bug — it's a feature. I mean bilingual navigation. I was playing with
gettext and ended up localizing parts of the site. As for the articles, the choice wasn't an easy one, but wasn't so hard either. Internet is global, English is international and for texts covering programming topics writing them in English is actually much easier. Having a second language version would mean more than double the work (write once, write again and then check for discrepancies… such a waste of time). Some articles however deal with local topics, should be available in Polish and there probably wouldn't be much sense in translating them. Only occasionally I prepare one text in two languages. It's a compromise.
I really wholeheartedly hate websites that put more than one flash object on a page. Why the hell make a content, sidebar, logo and simple navigation bar in separate flash objects only to add a stupid gradient effect (oh yes, there are sites like that). I also dislike sites that sing and dance when you open them, that have nothing to do with music or other art whatsoever. While I understand that it is tempting to use a full-screen page completely in Flash for a creative company, having no other option to read the site when your browser doesn't use flash or being unable to copy contact info from the site because somebody forgot to enable text selection for that flash "contact us" page makes a visit there a terrible experience. Sadly, many architectural companies' websites fall into this category — they are read-only (or should I say: view-only). ↩
I have updated the stylesheet so that it doesn't force a specified width, but sets a
max-widthinstead. Additionally, CSS'
@mediaclasses have been added, that make it easier to fit the page in smaller windows, like those on mobile phones, without introducing a nasty horizontal scrollbar. ↩
li:hoverCSS in IE6. Please forgive me. (no longer true since March 2012) ↩