Archive for the ‘general’ Category

My top 5 code editors for Windows

Sunday, August 22nd, 2010

In school, I had an entire class on Dreamweaver and even though the class showed you how to do everything with the program, I think I immediately forgot how to use anything to do with the Design view. I have always and always push others to hand code everything. Being a Windows guy, I don’t get to use the popular Coda or Textmate editors, but I’ve found a few for Windows that kick some ass.

1. Notepadd++

This was the editor that I felt comfortable enough with to drop Dreamweaver. It’s open source and 100% free, which is something everyone likes. It’s lightweight and customizable. Plus, it’s got one little feature that I need in my editors, it lets me move the tabs around. It doesn’t feature code hinting not does it close tags for you but I’ve found that has actually made me a better code.

2. Intype

Intype is my editor of choice right now. So why isn’t it at the top? Well, it’s an alpha version, 0.3. So it’s got some bugs but I’ve found it’s a pretty good Windows alternative to Textmate. My main pet peeve with it is small and probably won’t matter to anyone else, but I can’t drag the tabs to reorganize them. If it’s the editor I use right now, why isn’t it the number one on the list? Well, it is an alpha version and when they release the finished version, it won’t be free.

3. Aptana

Aptana is a great editor and features things like code assist and is can be considered an open source version of Dreamweaver. I found it easy to use because it’s Eclipse based and I’ve found it comfortable because I’ve used Flex/Flash Builder. But, unlike the previous two, it’s not lightweight and, while it’s highly customizable, it’s not as easy as Notepad++. It’s the editor I use when I’m working with PHP.

4. Dreamweaver

For the first couple of years, this was my editor of choice. And like most Adobe products, they’ve added more and more features with every new release. But with every feature, the program gets bigger and bigger and a lot it, I don’t use. Waiting a minute or two for the program to load up when I just want to make a couple of text changes can get a little annoying, plus I don’t have any use for the design view or the new Live view.

5. Microsoft WebMatrix

Surprisingly, Microsoft has actually made a lightweight and pretty nice editor and it’s free. It’s not all that customizable but it’s got a few interesting features, such as being able to log into databases and even has a SEO report function. I’m really surprised at Microsoft for putting this out and if it was more customizable, I think it would be higher on this list. I want to be able to change the tag colors and font which WebMatrix won’t let me do that, but it’s a beta so they might add some features.

Internet Explorer 9 just might bring on a golden age of browsers

Thursday, August 19th, 2010

Yeah, I know. That might be some hyperbole. But, then again, if IE9 can do everything Microsoft is claiming, then all that time we spend making sure things work in IE, might be put to use doing interesting things.

I remember years ago, back during the browser wars, which were explained to me by my more nerdier friends, I was told Netscape was better and that’s what I used. Until, of course, a few years later when I was using IE6 because that’s what came on my computer and I was like a vast majority of people at the time and didn’t know there was other browsers or that there was any difference between them. And then, somehow, I discovered Firefox 1.5 and everything changed.

When I started web design in school, the IE7 beta was out and my teachers were excited for it because it was going to be so much better than IE6 but, of course, it wasn’t really that much better. And IE8 came out and was a little bit better, but now we just have to spend more time making sure that a website works in more than one version of IE (I stopped caring about IE6 over 6 months ago with the full support of my boss).

But, if Windows 7 is going to take over for XP next year in the corporate world, we might just be entering a world where Internet Explorer actually displays a website the same as the other major browsers. Think about that. I’m not talking about CSS3 transitions or animations, but just basic positioning. I don’t think I’ve ever made a site that didn’t require me to at least fix some minor issues with IE7.

IE9 won’t be the best browser out there, but it will, guaranteed, be the most used because the most people use Windows and most of them use IE. But at least it’s not going to suck and be a generation behind. We don’t need IE to innovate, we just need it to work, that’s what Webkit and Firefox are for.

Speaking of Firefox, Firefox 4 beta 3 has won me back. For a while now, I’d started using Chrome more and more but with this latest beta, I’ve gone back to FF. It’s just as faster and it’s just as powerful under the hood. Plus, I’m sure every browser will have something like Tab Candy, which is coming with the fourth beta I think.

How one teacher almost turned me off programming forever

Tuesday, June 1st, 2010

Growing up I owned a Commodore 64 when it was the computer to have. That was the last time I had a top of the line computer until I moved out, went to university and bought my own. My parents were not and are not technology people. When I was in junior high, the school I went to was an experiment where it used computer networks for the first time(yes, I’m that old…). I loved messing around on the computers and even got to do a presentation in front of the school board showing my awesome multimedia project. When I moved on to high school, I took a computer programming class that taught me QBasic because it was 1995 and that language still mattered, a bit. The next year I was excited to take the more advanced programming class, which taught C++. I lasted 2 weeks. Not because it was hard or because I wasn’t interested. It was because I had a bad teacher.

What made him a bad teacher? He wasn’t interested in teaching, he just wanted to talk programming with the students that already knew C++. I can recall to times I asked for help and he got frustrated that he actually had to answer questions. Myself and another student made it two weeks into class and fell far behind because we didn’t have computers at home and the teacher had no interest in explaining assignments in class to us. He was much more interested in talking to the students whose dad’s taught Computer Science at the university. This wasn’t the only class I’d had him for, he also “taught” me French in junior high. I use the word taught lightly because when I took grade 9 French, I realized I had no idea what was going on despite getting an 80% grade in grade 8 French.

Am I bitter? Maybe just a bit. I rediscovered programming later on after I discovered and fell in love with web design. Eventually, when I really got into ActionScript 3.0 and while it’s not a hardcore language, it showed me how much I really love programming and it makes me wonder what I would have been able to do if I’d learned programming in high school and not later. But, luckily, I discovered web development and had some great teachers at college. I was just struck the other day, thinking back, at how differently my life could have been if I’d had a teacher that wanted to teach me something that I would have loved. But at the same time, who knows, I might have ended up being a drone, programming rocks at EA. I love what I do and I very happy that I ended up doing what I’m doing, but it’s amazing how one person can change the direction of your life, good or bad.

Education might save the Internet

Monday, May 31st, 2010

I was listening to CBC radio in the car last weekend, I can’t remember what show it was, but it was a panel of people from the book world, a couple of authors and a publisher and they were discussing the future of books. The main point of the discussion was the authors wanting their work protected and how much harder it was to do that with the spread of digital books. The host mentioned Amazon and the 1984 controversy where Amazon deleted copies of the novel people had downloaded for their Kindle because they didn’t have the proper rights to sell the book. The big deal was Amazon did this without telling the Kindle owners. This lead the conversation to the idea that companies like Amazon could, I don’t know if they do or not, track what pages you read more than others in a book you’ve downloaded. This came as a big surprise to the authors.

These are people fighting to have their books on Amazon raised from $9.99 to $13.99 when the book is in hardcover because they want the money they loose when people buy the digital book and not the physical one that costs $30. The fact that the two authors on the show didn’t have even a basic education about how digital technology works is a perfect example of the bigger problem that is going to affect the Internet over the next few years. The people making the decisions and those fighting for things like extreme copyright protection don’t understand what they fighting against. I strongly believe that their “victory” against Amazon to raise the price of their books will lead to a loss in money. People that were willing to pay $9.99 for a book might not be willing to pay $13.99 and will either wait until the price goes down or more likely, will download the book from a torrent site.

If the decisions made on things like access to information on the web or to the Internet itself, it will only lead to a backlash that would be worse than if they had left things the way they were. But with issues like Net Neutrality and censorship being fought in countries like Canada and Australia, this is a problem that can only be solved with education. We need to educate not only the people in charge but younger people, so they when they move into positions of power, they know how things like the Internet work and they can make the right decisions, not ones fueled by money. I think it’s been proven that you can be open-source and make money. If you make a good product or proved a good service, people will pay for it, you don’t have restrict access to your product to do it. Maybe in the near future, schools can add a basic Internet education class and show people how the Internet really works, so in the future, decisions won’t be made based on things people have seen in movies or by what they’ve been told by lobbyists.

The Front-End Developer’s Guide: Just because they say they do, doesn’t mean you should too

Monday, May 10th, 2010

One of the great things about the web design and developer community is that a lot of the experts love to share their knowledge and opinions. I’ve learn a ton from sites like gotoandlearn and CSS-Tricks. I’ve spent a lot of time on sites like that, learning the things that they were awesome enough to share. A lot of the sites I follow will also post their opinion about everything web, like the Apple vs Adobe fight over Flash or what CMS to use. But something that took me a while to learn was that, although a lot of people knew a lot more than me and what they did worked for them, it wasn’t always the right thing for me. Here’s a few example:

PHP is a horrible language and you shouldn’t use it

A lot of web developers out there use PHP but most of the guys whose blogs I follow are always going on and on about Ruby and Python. So, being a newbie, I started looking into both because that’s what the guys I respected said I should do. Ruby and Python are both powerful programming languages and, for those that care, the syntax is amazing. But here’s the thing, unless you’re building something like Twitter, then PHP is probably good enough. Most of the time, if you’re working for a smaller company, like me, or if you’re a freelancer, you’re not going to be working on huge sites with hundreds of databases. Most of the sites I make just need to display a few things that are in one or two databases and PHP is perfect for this. Plus, PHP has a huge community and it’s 100% open-source, any problem I’ve had was quickly solved with a search on Google. I’m not saying it’s the best language, I’m just saying for most of the stuff people do, it’s usually good enough to get the job done and get it done quickly.

The editor you use to write your code matters

For some developers it’s a mark of pride which code editor they use, for Flash especially. Lots of guys use FDT or Flex/Flash Builder and look down on people that use Flash Professional. The same goes for writing HTML/CSS, if you’re on a Mac you use Coda or Textmate, on PC you have tons of options and each one has it’s own benefit. But in the end, it really all comes down to what program you’re comfortable with. I learned to use Dreamweaver in school and that’s what I still use now. I don’t think I’ve ever used the design view but I used it for two years and school and got used to the code completion. I’m trying to move to Notepad++ but the comfort level isn’t there yet. Use the editor you like, I know guys that like to code in Notepad.

You should use a CSS framework

CSS frameworks have become really popular lately and their are people out there that use them for every site. I have to say, I’ve never used one. I tried once but the time it took me to figure out what was going on, I could have built the site from scratch. If you’re comfortable using a framework, go ahead, but don’t feel you have to use one. The main mistake I think most people make is trying to force a design into a framework.

iPhone/iPad apps are for making money and the web is for innovating

Saturday, May 1st, 2010

When Apple announced their new programming rules for making apps for the iPhone/iPad, it pretty much eliminated any chance of me building an app. Not because I’m against learning Objective C or Xcode, but because I don’t have the time right now and even though the Packager for iPhone in Flash CS5 looked promising, I still don’t think I would have been all gung-ho to build anything, and, of course, Apple took that off the table. After spending the last little while defending Flash and saying it should be on the iPhone, I’m coming around to thinking, does it matter if it’s not on there? I still think it should be on the iPad, mainly because Flash is still a big part of the web, but that’s another post.

My way of thinking is now this, Apple wants to control what’s on their mobile products and as a company, that’s their right. I’m not big on them throwing around the work “open” all the time, because nothing about the iPhone/iPad is actually open. And because of Apple’s approving process, the iPhone development world isn’t going to be full of innovative apps, with the exception of things Apple makes, maybe. The iPhone platform is going to be good for one thing, apps that are based on your web app or extend your website or an iPhone version of the game you made for the web. People are going to make money on the iPhone and iPad but they aren’t going to make anything revolutionary. There won’t be any Googles or Twitters showing up first as an iPhone app.

The web is where innovation happens and it’s going to stay that way. On the web all you need is a domain name, some hosting and an idea. If it’s a good idea and you pull it off, who knows, you might have the next big thing on your hands. No need to wait for anyone’s approval. That’s the great thing, anyone anywhere can do it, with some talent and a bit of luck. And here’s the other big difference, you can make some cash through the App Store, some people have made a fair chunk of change, but you’re never going to see anybody becoming a billionaire off apps. There won’t be any Amazons or Facebooks created on the iPhone.

I’m not saying making apps is bad. My point is the freedom to create is on the Internet. And no one should let anyone tell them whether they can put their idea out there for people to see.

Should web designers have a style?

Tuesday, April 27th, 2010

One of my favorite designers is James White over at Signal Noise. If you’ve ever seen his stuff, you’ve probably noticed that he’s got the bright colors retro design down. Some of the things he’s made are just amazing, including his Tron Legacy poster. When you know you want something that looks 70s retro, he’s the guy that you go to because he’s one of the best I’ve seen at that style. There are tons of designers out there that have a style that they are amazing at and you go to them when you want something done in that style. But what about web designers, should they have a style?

I don’t know how many web designer’s sites I’ve been to were everything in the portfolio page looks pretty much the same, just different colors. The navigation bars are all in the same place and have the same type of gradient. The overall layout of the websites are the same, the same number of columns and the same style of pictures. I’m not saying I’m the greatest designer in the world, but I’m not the type to recycle the same thing over and over. I try to design the site to fit the client. But, at the same time, I’m sure that these web designers get their work based on what they have already made and the clients are the types that say, “I want that, but blue.” If you’re great at corporate designs, then all the power to you. But shouldn’t you be able to design any type of site a client might want?

If you’re designing posters or magazine covers, the odds are the client is coming to you because they like your style and they’ll give you some guidelines and then let you go to work. Designing a web site is something completely different. Most clients want to be involved in every step of the site and most, in my experience, think they know more than they really do because they surf the web at work. Most of the time, we have clients send us sites they like so we can figure out the style that they want. But if a web designer has a personal style, he or she might not be able to design and build the site that the client wants. They might like your previous work but if it’s not what they want and you can’t make the type of site they feel they should have, you’re going to lose work.

I think if you’re a web designer starting out, having an individual style might be a bad thing. You should be able to adapt to what the client wants. But at the same time, if you’re amazing at designing a type of site that’s popular and that people will want, then perhaps it’s best to go for that. In my experience, the only guys out there that have a style that they’re known for are the big ones who’ve been at this for a long time and they usually have 15,000 followers on Twitter.

Should you care about users that disable JavaScript or plug-ins?

Monday, April 26th, 2010

The other day, someone had put up a site on reddit.com’s web_design subreddit and asked everyone to give their opinion of it. One of the first comments I read said that the site fell apart if the visitor had JavaScript turned off. My first reaction was, “So what?” and this got me wondering, if someone turns off JavaScript and the site doesn’t function for them the way you intended it to, is that your problem or is it theirs? Should you, as the developer, spend the extra time making the site still look good for the few people that don’t run JavaScript? Or by turning it off, do they have to accept the fact that web sites aren’t going to look right every time?

As a web surfer, the only thing I block is pop-ups. I don’t block ads, I run every plug-in out there. Why? Because I want to get the full experience of the Internet and those things are all apart of it. And it wasn’t until recently that I began wondering about people that block JavaScript, mainly because as jQuery becomes more and more prevalant on the sites I build, sites with jQuery image slideshows or something similar. But the things I’ve built are pretty easy to fix with a bit of CSS, I just set up the div that that images are in to the height and width of one image and the set the div to overflow:none so it will only show the first image if the visitor has JS turned off. But I think that’s as far as I’m willing to go, I do that because it also helps the site display correctly if the visitor uses a a browser that runs JavaScript slowly.

What about plug-ins, like Flash Player and Silverlight? If the user has those disabled, should you have something in it’s place? Or just something saying they need to install Flash if they wish to view it? My opinion on this is pretty much the same as with JavaScript, if you choose to turn it off, that’s your problem and you’re the one who’s missing out. If the swf is essential to the site, then I’m sure the developers chose Flash for a reason and to use the site, you’ll need to enable Flash. Otherwise, it’s just something to add to the design and you can get by without it. I don’t think that front-end developers usually have the time to add alternative content for people that are blocking or disabling plug-ins.

And this is something that’s going to become an even bigger deal in a year or so. We’ve seen how long it’s taken to kill Internet Explorer 6 and the main problem it causes and going to be nothing compared to what IE7 and IE8 are going to do with HTML5. They don’t support any of it from what I understand and some developers moving to using the canvas tag in order to support the iPhone and iPad, some people are going to have to choose, build for the majority of web surfers (unfortunately true) or people that use browsers that support HTML5. Or are people going to spend the time building multiple versions of the same thing, which usually won’t have the same functionality. And I know the clients I work with won’t go for that!

My view is there users choose to turn this functionality off and if they do, then they should be prepared to view a lesser version of most sites. You can’t complain about your TV resolution if you don’t subscribe to the HD channels or if you don’t have an HD TV.

Things you need to know to be a great front-end developer

Wednesday, April 21st, 2010

It’s been my experienced that front-end developers seem to get the short end of the stick when it comes to the importance of their work, especially if you listen to back-end and RIA programmers. But to me, a front-end developer’s main job is translating a static design into something that works on the web and that can be harder than most would suspect. On so many projects, I’m the one that has to take what the designer has made and build something that the back-end developer is going to be able to use with whatever dynamic system they’ve set up. Also, every web site that’s just a bunch of static pages are put on my desk and I usually have way less time than I’d like to get it built and online. But with everything, there are crappy front-end people, good front-end developers and then there’s great ones. What does it take to be a great one?

You need to be a HTML/CSS expert

I’m not saying you need to have everything memorized, I know I don’t, but you need to know how to use everything. You have to be able to take a design and almost immediately know how you’re going to lay it out. Not only that, you have to build everything with web standards in mind, which is harder than you’d think sometimes! If you even consider giving up and using a table because you can’t get something to position right, then you aren’t an expert. You should be able to make the site look good in all the major browsers, it doesn’t have to look exactly the same, just close enough that everyone’s happy. Also, being able to hardcore quickly will make your life a lot easier.

You need to be able to use Photoshop and Illustrator

I get designs given to me in a range of different formats, Photoshop psds, InDesign files, pdfs, and the odd Illustrator file. The designer is going to work in a program that they’re comfortable working in and it’s usually your job to get the assets you need out of it and turn them into a file format that you can use. Other times, you might have to remake something because you can’t get anything usable out of the file they gave you. I rarely get to do a full design because I work with 5 designers, but the odd time I’m the one that has to design the site and the more you know about a program like Photoshop, the better designs you can make.

You need to know at least basic PHP or a similar language

You can’t always be going to the back-end guys with every dynamic site. Sometimes you just need a site that displays the content dynamicly and if you can do that, it increases your value to where you work or to your clients but it also allows you to not bother the programmers with something they’d find pretty simple. Plus, knowing a language like PHP will enable you to talk to the programmers and understand what they want when you’re building the basic structure of a site that uses something like a content management system.

You need to know how to work with something like Flash or Silverlight

Clients love splashy pages and, trust me, they don’t think Flash is dead. The more you can do with something like Flash, the more you’re going to be able to do for your clients. Whether it’s just basic animations or something more complex like a game that fits the theme of the site, Flash can add some fun and make a site more dynamic. I build a few sites that are completely Flash every year and the more I know about Flash, the better the site will be programmed and the better it will run.

You need to know JavaScript and how to use jQuery

When I first started out, JavaScript was something that you never used. I remember people ripping sites because it had a JavaScript component and it was because browsers would be bogged down by too much of it. But with Chrome leading the way, JS has come back into fashion. jQuery lets you do simple animations that aren’t really worth using Flash for and it can also be used to make a site more dynamic. The more you know about JavasScript, the better, because since it’s rendering by the browser and they all have their own rendering engine, not everything works in the same way. The more experience you have with JS, the better prepared you’ll be to deal with those issues.

If you can do all that, you’re going to be the most popular person around. If you can do even more, then you’ll be rich. Like rich enough to afford a Macbook Pro! Plus, front-end devs are the cool people in the web design world.

The majority doesn’t care what you used to make it as long as it works

Sunday, April 18th, 2010

The college I went to does an annual school trip to web design and development businesses for first year students. It’s to show them what the industry is really like and the differences between the firms that are out here. This is the second time they’ve come to my work while I’ve been employed there and I try to use the hour to give them as much advice as I can. I’ve stayed friends with a couple of my teachers and one had been telling me about a new teacher that was telling the students that Flash was dead. Now, half the course is design and the other half is programming and Flash takes up a large part of that. So I took the opportunity to, not continue the whole HTML5 vs Flash debate, but to tell the students not to ignore any technology. Why? Not because Flash is always the best thing or HTML5 isn’t going to shake things up but because the vast majority of Internet users don’t care what you made that site or game in. They only care that it works.

Since Steve Jobs called for the death of Flash, which is all about keeping money coming through the app store, there’s been huge debate about the future of the web and it’s not slowing down. Blogs like The Flash Blog are putting up posts without comments because the debate can get so heated it can turn personal. But when I try to talk to the people around me about it, very few understand what I’m talking about and even less care. And that’s the thing we all need to remember. As web designers or developers, we are, for the most part, early adopters. And a large amount of those are Mac users. There’s billions of computer users in the world and they run Windows, do you think they care how a Youtube video runs on somebody’s MacBook Pro? Most don’t really understand what Flash is, they just know once they download that thing that the computer tells them to, the video they want to watch or the game they want to play works now.

So what am I saying here? I’m not saying Apple users don’t matter, I do have an iPhone. I’m just saying that there are still things that only Flash can do. I’ve yet to see an HTML5/CSS/JS site that has the interactivity of some of the amazing sites featured on thefwa.com, sites that take 25 people and months to make. My work is currently pitching a site to a client that has to be made in Flash, it’s going to have a real person that interacts with certain button clicks and the background is going to have video running constantly. The fact is, the client wants a certain kind of site and the technology that we use doesn’t matter to them as long as it’s able to reach the most amount of people as possible. And if that means they get the site they want, then they’ll gladly sacrifice those people that block Flash or those that won’t visit the site because their computer’s CPU runs at 100%.

Somewhere in there I have a point. It’s don’t stop uses a technology because someone you look up to tells you not to. Use the best one for the job you need to do. I would say at least 75% and maybe even more don’t care what you made it in. Look how long it’s taken us to make people understand there’s more than one Internet browser. Try talking to your sister about something called Flash, it’s like trying to explain something from Final Fantasy to her. I read today that 73 million people play Farmville, do you think they care about anything other than that their games work in Facebook?