Posts Tagged ‘work’

Firefox history cache

Tuesday, August 4th, 2009

Just a note to self: Firefox caches pages with back/forth button in a way that no javascript is run again – which is a dealbreaker with some ajax pages. Add a script tag with an alert just to the very beginning of the head tag, navigate away from the page and come back: no popup; I did forget about this one… Solution:

window.onbeforeunload = function(){};

My very own dedicated host: www.rosamez.com

Tuesday, April 7th, 2009

I decided to get a dedicated host at HostGator, so that I can host assorted crap – nothing really serious, but I do need something more flexible than Google Pages. So, that’s it, so far I’m pretty happy with their offer and I finished making a simple landing page which (including the 3d modelled cup and the icons) took only a couple of hours. And the domain name? It’s after one of my favourite books, Rozsamez, once again, no big secrets here.

Website split testing – what they won’t tell you

Tuesday, February 17th, 2009

Some seo and marketing companies believe or state that the split testing (running two different versions of a page, pages or services on your website) or multivariate testing (certain page elements are being replaced and tested in paralell with other variants) is the magic bullet for increasing your rate of profit; but before we believe everything, let’s think twice: do people like malls and supermarkets? They do; Tesco, Salesbury or Auchan are popular examples of supermarkets where price is a major winning factor: one doesn’t go to Tesco because shopping is a “joy” – one goes to such place, because the quality is “pretty much okay” while the prices (and season sales) are unbeatable.

During split tests usability should be a major concern: an ad filled, blinking-scrolling website “probably” will not be as popular as a clear, well designed web shop – during these early periods the split test will show what we prety much know: I wouldn’t go to Tesco for a weekend shopping if it was a dirty, rotten place on the end of nowhere. Or I would: give me an unbeatable price and I might consider spending my money there (hence many butt ugly webshops with Joomla, Drupal and other home made CMSs exist) – with a better, comfortable environment the rate of return would clearly increase. But what happens if the services are fine, the layout is okay, navigation is user friendly – and you get all excited about testing small design elements here and there? Would I go to Tesco more often if they painted the doors red? Would I spend more money if they relabel all the products with shiny happy smily labels talking to me in a distinct voice, “have a good time here, dear customer”?

Probably I couldn’t care less. As long as the services are “okay” and I get what I want for my money, it’s just fine – treating the customers like a bunch of monkeys, trying out small “fine tunings” on your shop (let it be a webshop or a real store) will not boost those numbers; either because your monkeys don’t care (they already know where the banana is, how it looks like and the trees already look and feel pretty familiar) or just because monkeys and psychology don’t mix. You, as a designer, can tell yourself how your newly designed click-me button is so much better, or you, as a copy writer can tell yourself how your new copy makes the user want to click on the product, in the end you just convince yourself about what you want to hear. And what will happen in these cases with your numbers? There will be 1-2% fluctuations, nothing else. Have fun figuring out those numbers.

Code quality and working in a team

Tuesday, February 3rd, 2009

I usually had been very harsh with others when I got to uncommented, undocumented, badly written code, especially in house – most of the time I thought about this as a matter of capability, but when I myself resort to low quality code I really have to stop for a moment and think twice before criticizing others. So far I have been trying hard not to argue with my boss (on matters that should not concern me or on matters I have no authority to comment on / change), but now this is the time for the same policy with colleagues.

Where specifications are most of the time scarce or badly written, where deployment is always the most important thing (even if the timesheet for the next week is still empty), where most people just don’t feel the need to comment the code (or just remove comments with refactoring), where insane ideas from management people pop up on a regular basis, when doing split tests on the live site for the sake of 1-2% lead increase is more important than thinking about how large scale parallel versions will affect the application logic itself, where search engine optimization comes way before code quality and user experience most of the time (pretty ironically) negating the means of standard, well-proven accessibility: I really wonder, how am I supposed to deliver high quality software? And what’s worse, noone really cares for the quality part (they would say “yes, we really do” wholeheartedly here, but caring for me rather means maintainability than rolling out new features as fast as possible). Without starting to figure out who’s right or wrong, which I really don’t feel like anymore, I really am close to understand someone who just wants to “get the job done” – while I myself am facing the fact that neither I, nor most of us have the qualities to produce “best quality” under such circumstances.

I do know how my boss would react and how impudent this all sounds (with keeping in mind that – fortunately – this is a for profit company, not a bunch a freetard hippies in a cave), but even though I’m doing my best, I felt very frustrating that no matter how hard I try, I cannot comply with my own standards, angry with myself and others, now I think it’s time to change and let things go on their own way. I still try not to break things, I still comment my files, I still try to write clean and readable code, but I feel less guilt with the terrible hacks I or other team members do day after day.

Seo recommendations you will not like

Friday, September 26th, 2008

I am by no means a SEO expert, but after doing frontend related development for a couple of years, I think there are many small “tricks” one can use on his or her site, before shelling out big damn bucks for so called SEO experts.

The tone may not be to your liking, but you asked for it:

  • Use semantic html. No, really, I mean it. Always use the appropriate layout, tables for data tables, unordered lists for lists, ordered lists for ordered lists, paragraphs for paragraphs etc. Be sure to use human readable hrefs in links, use titles, image alt texts, abbreviation tags: write clean html. Clean and valid. Capisce?
  • You probably have an html head (unless you have a text only site), html heads have titles and descriptions: use them, but don’t rely on them too much. My basic rule is that the crawler robots are written by humans: like you don’t send your coworker a mail with a blinking-scrolling subject line, you don’t do the same with html. Don’t screw html and force it to be something else, okay?
  • You are writing totally valid XHTML transitional pages: don’t use deprecated tags but use css for styling! Use expressive classnames, try to use microformats if it is possible. As a rule of thumb: try your page without css and javascript and be sure everything works. Hard? Not really.
  • Try to use clean urls, but it’s not a must at all (though makes a bit harder for script kiddies to guess the internals of your site and doing fake SEO pages for iframe attacks and whatnot) – think about the user and how you can make his or her life easier. Which one will he or she remember more easily: ?itemid=213jGH&SessID=123402312&order=Price:ASC or /items/213 (storing the rest in the session of course)?
  • You want fancy javascript? Always make javascript unobtrusive; put it into an external file, use onDomContentLoaded or script insertion at the end of the page, but refrain from inline javascript. The Google robot can and will parse everything and if something looks like an url, it WILL pick it up. Separate logic from content and content from style, easy lesson, isn’t it? Just hire good devlopers, because quality comes at a price.
  • You want fancy Ajax everywhere: first do the non-ajax GET/POST restful development, add Ajax layers later or use intelligent web controls which degrades nicely. Do the other way around and you will give yourself a hard time, but if you did so, be sure to use Google Webmaster Tools and upload page maps for those grey areas inaccessible for the script-disabled robot (because no matter how simple are scripts, don’t expect the robot to do anything more complex than fetching the obvious links).
  • Do you have a webshop or you rely on page search heavily? Google’s form parsing is getting better, but that’s far from perfect: be sure to provide “static” pages with the most relevant searches and make it accessible. Do you have comments? Add them to the “static” pages and make those pages useful! If people are searching eagerly for Samsung UX51 Plasma TV, then that product must be accessible for Google, okay? Even if it means hundreds of pages, do it: Google will filter out what’s irrelevant, but as a rule, don’t generate waste. Make useful pages, not wast, okay?
  • Let the users generate valuable content: comments are varied and most of the time are not copy pasted crap; should you have comments and discussions on your page, make sure Google can index those!
  • Do you want to forbid the robot to follow some of your pages? Use robots.txt and rel nofollows and refrain from nonstandard javascript shit. I mean it. If you are using iframes (because you’re living in 1980), be warned, the robot can and will parse those: little page chunks useless for your visitors, is this what you want? And instead of fixing the mess you have done with some weird javascript, just use your head and rethink your layout! Can you do that?
  • Have you thought about creating one content for the user and a different one for the robot? Don’t. If you really have to do that, keep it on the client side; want to do server side redirects only for the bot? Try it and see how you will be blacklisted soon.
  • Stay away from generated junk: the more relevant your pages, the better. If you have a review for one product, don’t copy it brainessly for others, it is NOT useful content, okay? Page relevancy is important, but don’t overdo it, don’t try to hack in ajax queries for duplicated content, but ask yourself first, why do you have duplicated content? Why do you want to sell the same TV twice? Because that’s what the merchant wants? You think that the user is stupid enough and will buy the same product twice? Are you really sure?
  • Do you think subdomains are cool? If you have subdomains, the external links will be shared (not that good) and internal cross-domain links are not that powerful – if you do have the content for different subdomains then give it a try; want to generate subdomains for each and every page section you have? I wouldn’t do that.
  • Be in the mainstream, make users link to your site: create an affiliate program, do link exchange, open up your apis and encourage developers to use your site and create services, and mostly: create good content that people will like and will want to link to. Are you thinking about spamming all the forums and blogs with your site’s links? Try it and realize how you suck: bigger sites with valuable content linking to your site give you a much better score than causing John Doe to link to your site on a blog noone reads. One mention in Wikipedia or on a major indexed support forum weighs hundred times more, than the spamming you make in others’ blogs and sites.
  • Are you reckless and want to see how your new SEO strategy works out right now? You know, there’s a secret page where you can see all those magical numbers… erm, here’s the secret: no, there isn’t. SEO is much more about patience, the indexing takes time, if the new indexes are built after weeks then that’s it, no money can buy a faster algorithm.
  • You think you can sell shit with good SEO? You think you just have to know the secret? You are wrong. Generate good content, provide good services, have a good brand, attract visitors with good quality. If you have visitors, you gotta keep them and noone stays on a useless site selling fancy blinking scrolling dogpoo for more than a couple of seconds. Keeping your visitors and generating traffic, even if it costs you your valuable dollars is part of SEO. First the content, then the SEO, not the other way around, okay?

Yes, these recommendations seem to be trivial, but as I implied above, anyone promising you to skyrocket your visitor numbers just with a magic formula is a liar bastard; should you believe his words is your problem, not mine.