Thanks to everyone who came and participated!
Thanks to everyone who came and participated!
One of my clients requested a video gallery as part of her WordPress site. Her requirements were simple:
We decided to keep costs low and use a plugin. Unfortunately finding the right plugin took quite a bit of time.
At first glance this seemed to be the biggest plugin with its own website and plenty of documentation. However, the plugin was very limited, at least using its free version.
Unfortunately it comes in a preset format that didn’t fit my client’s needs. I didn’t see any way to have several galleries in one page and customize its look. Next!
This was my next choice. You can use it to create custom galleries and add videos to them from YouTube, Vimeo, or via upload. However, it had several problems.
The UI was uncomfortable. I had to do spend plenty of time to setup the galleries. E.g., why require the exact YouTube video ID? Why not ask for the YouTube URL and retrieve the ID automatically? Also, the plugin uses JWPlayer instead of the native YouTube player to play the videos. It’s not that bad, but I found it ugly and redundant.
The biggest fault however was even worse. For a while the plugin was great, until I got a call from my client. It suddenly stopped working. Looking at the plugin support page other people had the same problem with no response from the author. Thus, I bid it farewell and moved on.
I was about to despair and write my own plugin. Fortunately doing some deeper Google searches I found YouTube SimpleGallery, a fantastic and easy to use yet unknown plugin. It had exactly what I needed – a quick and easy way to create a gallery of YouTube videos, easy to customize CSS, and an intuitive UI.
The plugin works by listing the YouTube URLs line by line and surrounding them with some shortcode. Fantastic! I setup the needed galleries very quickly and added custom CSS. I also installed Fancybox which integrates with the plugin to display the videos in a nifty dialog.
YouTube SimpleGallery proved to be the best plugin. It’s very easy to use, simple to customize, and works great with Fancybox or your favorite display plugin. If you’re looking for a solid WordPress plugin to display a YouTube video gallery, I highly recommend it.
This year I decided to fulfill a dream and go travelling for a month in the UK, that is Scotland, England and Wales. I’ve had an amazing time and got to see 2 of my favorite bands in concert – The Stone Roses reunion at Heaton Park in Manchester (magical!), and The Vaccines at The Eden Project in Cornwall.
The UK is really connected. Booking bus and train tickets is cheaper if you do it online, and sometimes can only booked online with a company like Megabus. Smartphones are abound. I got an all you can eat pay as you go data deal with the Three network for 15 GBP. Apps like Yelp and Urban Spoon work well in the UK. Here are some more suggestions from The Guardian.
Now I’m back to work, celebrating 2 years of freelance web development. Business is booming. A few projects have been waiting for my return and I already have several new offers. I’d like to expand my business with more manpower, create a Hebrew website for my SMB services, and do continue blogging about my experiences. See you soon.
This is a new blog post chain – My Favorite Web Dev Things. It’s purpose – sharing great tools and services with other web developers.
These are the rules
These are a few of my favorite web dev things:
I’m often asked whether I know HTML5, which I do. I see other web development companies throwing around that fancy HTML5 logo, hoping to impress new clients. Clearly, there is a lot of buzz around it, but do people know what HTML5 actually means?
Folks must have read or heard that HTML5 is the latest shizzle, and that they should demand it from their friendly neighborhood web developer. Fair enough. Nonetheless, I’d like to clear it up and help you understand what you’re actually asking for.
Basically, HTML5 is the latest version of the HTML standard. Just like a new version of MS Word gets released every now and then with new features, so does HTML. Previous versions include 2.0, 3.2, 4.0, etc. HTML 5.0 is the new version, and older versions will still be supported by the browsers.
What does HTML5 include? Actually, HTML5 is still under development. Some browsers implement some of its features. As usual, vendors like Mozilla, Microsoft, and Google have disagreements and do things differently. Read all about it on the excellent Dive Into HTML5 website.
Having said that, HTML5 includes several new features. First of all, it supports new HTML semantic tags. If you’re not a web developer, this shouldn’t matter to you except for a few cool things like email and search form fields. Browsers, especially mobile, treat them differently, for example by loading the email keyboard when filling an email field. Take a look at the HTML5 cheat sheet for new tags if you’re up to it.
One of the hottest HTML5 features is a built-in video player. Wait a sec, don’t we already have browser video players? Yes we do, but they are Flash based and need the Flash plugin to work. Flash no more, for modern browsers shall cometh with their own video player that works on iPhones and iPads and can be customized with a new look.
Canvas, a web browser drawing surface, is another cool feature. It brings in-browser animation and gaming to the masses, pushing Flash off the throne. They are even working on 3D standards such as WebGL, coming soon to a web browser near you.
Other features include geolocation, local storage, offline support, and more, all hopefully in your browser. Hopefully!? Yeah, not all features are fully implemented for all browsers yet. Furthermore, old browsers will have to rely on fallback technologies, like Flash, and eventually have to be upgraded.
To sum it up, instead of blindly asking for HTML5, ask for the features that you actually need. Whether it’s video, animation, or offline storage, let your web developer figure out how to implement it . HTH.
Doing freelance work at the offices of SimilarGroup I’ve realized something important. Seating arrangements in hi-tech companies are all wrong.
In the beginning I was sat in a big room with 6-10 people. The assumption was that I should sit next to the other frontend guy. This room has lots of noise, arguments, and a general feeling of stress and lack of privacy.
Fortunately one of the other offices was cleared, so while 3 arguments were happening in the big room I took the chance to infiltrate the office together with another employee who had had enough. The result is peace and quiet, more effective work, and a new friend.
Usually the seating is done by function. Teams are stuck together in the same room, managers in different rooms, and so on. It assumes that sitting next to someone you work with will bring the most use.
However, seating arrangements by function are useless. With smart phones, instant messaging, voice chat, email, and lest you forget, legs, people from the same team don’t need to sit next to each other to talk. Heck, they can be in entirely different countries.
Sitting arrangements should be by work environments. Different people work and feel better in different environments. These should be classified, and people who prefer similar environments should sit together. These are the factors at the very least:
If you make cutting edge technology, why not try cutting edge seating? Your employees will be happier and productivity will go up. Maybe even seating people from different teams with different knowledge together will allow everyone to learn new things and cause integration in the company to strengthen.
MVVM = Model View View-Model
This pattern was made for event driven UIs, thus making it perfect for web apps. Instead of writing loads of GUI code, it allows binding elements from the view to the model. Thus when one changes, so may the other.
Knockout.js uses this pattern. As you can see in their example code below, the HTML defines not only the layout, but also the events on each UI element and what it should trigger. The backend JS code binds to it and says what to do:
On first look I was shocked. Everything I know about JS so far, especially due to jQuery, was to keep Kosher and separate behavior from the view, i.e. the JS from the HTML. This framework puts at least part of the behavior in the HTML which is a big no no regularly.
On second look, what they did with a few lines of code would take plenty more if I had to write this otherwise. It also allows describing the UX in the HTML first and writing the backend code later, a rather cool way of development for a UX driven developer like me.
The real test would be to actually use it for a big ass web app and see what happens when the shit hits the fan. Does it work well with plugins and UI frameworks? Does it tango with AJAX? Is it easy to maintain?
Bottom line – looks really promising, needs to prove itself in big complicated web apps.
BEM = Block Element Modifier
So, what is it all about? Elements are basic UI elements such as text boxes and buttons. Blocks are either groups of elements or other blocks, such as search (input + button), or site header (logo + nav + search).
The idea is that blocks are independent and can be glued anywhere in your project, thus allowing code reuse. In case you want them to be a little different somewhere in your app, a modifier is used. It could be implemented as an extra CSS class that’s appended to the HTML tag.
There’s logic to their approach. Recently I’ve separated myself UI elements in a web app to widgets and components, which correspond exactly to their separation between blocks and elements. However, is it worth it to throw away what we’ve learned from MVC and organize our code only by visual means?
Bottom line – nice to see a different and logical approach, needs way more time to mature.
Like the rest of the world I’ve caught the Draw Something madness. This is the best and funnest app ever. Its developer is a genius.
Playing it for hours and hours in the last week I realized not everyone has figured out how to play it well. So just in case, here are 8 tips how to improve your Draw Something skills, get lots of coins, and have more fun sketching.
Have fun and good luck!
I have just spent several hours debugging why Arama’s new WordPress website stopped working after I moved the WP installation to a different directory.
The Israeli Ministry of Industry Trade and Labor launched a new marketing campaign to get Israeli businesses online. It’s a joint operation together with Google, Visa and Israel Post, amongst others. This is a big campaign with Youtube video ads and even public adverts in bus stations:
Their offer sounds quite good – free website + domain for one year. One registers, chooses a website template out of a dozen or two, and gets going.
When I first saw this, I freaked! Am I going to lose business due to this big campaign with free offers? Is my business, which builds websites for SMBs, going to go bankrupt!?
Luckily, the answer is no. The technology behind this project is based on Webydo, a content management system built on ASP.NET. They’ve got some major problems:
WordPress, the platform I gladly support and develop with, is the exact opposite:
I don’t understand why the ITL decided to go with a paid and constricting solution. Actually, I do. This is typical of Israel. As usual there’s money involved, lobbyists, connections, and I’ll scratch your back you’ll scratch mine mentality. Tomer Cohen’s post throws plenty of well deserved light on that darkness (translated).
If only the Israeli authorities had been more open, such a campaign would’ve used only open source technologies. Heck, maybe even the government would’ve thrown some money at developing them, maybe to translate more plugins and themes to Hebrew. It’s all there and ready. Even if it wouldn’t have been WordPress they could have gone for another open source solution like Joomla or Drupal. Damn capitalists.
My guess is plenty of SMBs will take up this offer for a free website. After a while, they’ll realize that they’re stuck with a system they can’t change and will soon have to pay plenty of shekels for. Israelis hate to be suckers, so by that point they’ll get angry, leave and look for a better solution.
Hello! My name is Ido and I make fantastic websites for SMBs