7 Mar
2007

Workflow Woes

Being a website developer I often have to follow a certain workflow over and over again. Every project is a little different, but the workflow is essential the same. Am I being too cryptic? Here’s an example:

I’m working on a new website, its been developed on a staging server, but it’s now ready for primetime. First, I hit remote desktop to the production webserver and set up a new site (IIS) with a new user, FTP, logging, permissions, all the boring but important stuff.

With the new hosting setup I actually have to move the staging website to it. Since our staging and production servers are on seperate networks, I usually accomplish this via FTP. So remote desktop again, this time to the staging server. Open up FileZilla FTP and start uploading the site.

Once the site is uploaded I usually need to make a few adjustments to it, connect strings, Google maps keys, etc. So I open up Dreamweaver and add an FTP connection to the new hosting setup. I also like to keep new sites saved in my local version of CuteFTP so I can quickly reference login info or upload/download files.

Finally, I remove the website from IIS on the staging server and archive those files using remote desktop.

So lets summarize… in the last 5 or 10 minutes I have setup one IIS website, removed one IIS website, and made or saved 3 FTP connections.

I just can’t but help thinking that my workflow is overly complicated. But I have yet to find a decent solution for it. Working with my two monitor setup certainly helps keep things organized when switching between my local desktop and the two remote connections. One app I would love to find would be some sort of FTP repository that would let me store one set of login information that could be accessed from CuteFTP or Dreamweaver, maybe even from the staging server when moving a site to production.

I’m open to suggestions and I know there are probably better ways to do what I’m doing, but I’ve yet to find them.

5 Nov
2006

Apple + Google = Revolution

383931.jpgAs you may be aware, Eric Schmidt, CEO of Google, joined Apple Computer’s board of directors in August of this year. While there may be a wealth of reasons why such a move would be beneficial to both companies, I have developed my own theory as to what one of the motives of this action might be, and it could mean a digital media revolution.

Looking at Apple, in their most recent press event they released the ‘completely remastered’ iPod nano, updated iPod, redesigned Shuffle, and new version of the iTunes store. The nano was, of course, a precisely timed face lift and release of a product with peak holiday season sales. The updated iPod is likely buying Apple time to finish work on the much rumoured ‘true video iPod.’ Also, the price shift of the flagship device has left a convenient opening at $299 for the impending ‘iPhone’ release. The Shuffle redesign is a natural progression of the device, leveraging Apple’s mastery of aluminum and flash memory.

383933.jpgiTunes 7, however, may be the big news out of recent Apple announcements. Bringing movies into the store, increasing the size of all video to 640×480, along with a facelift and interface improvements add up to a significant iTunes upgrade. The addition of movies to the store, while not a surprise for many, is a big commitment. Not just because of licensing and distribution issues, but because of the sheer size of the files. A broadband connection and iTunes’ new download manager help the situation, but do not relieve it completely.

Google has, in the previous years, purchased ‘dark fiber,’ so-called because the light transmission cables are not being used. The investment in these lines could not have been insignificant, but with Google’s horde of spending cash, such a purchase would not raise any red flags.

Apple wants to change the way we think about media. They want to provide access to any song, TV show, or movie, wherever we want it, whenever we want it. But to provide that, they need access and bandwidth, lots of it.

Google wants to make the world’s information more accessible, and has dabbled in video distribution and sales.

Now, with the cooperation of Eric Schmidt and Steve Jobs, and a unified goal in sight, Apple will use Google’s massive network and infrastructure to provide incredibly fast downloads of media, and potentially, the ability to distribute High Definition media globally.

The ongoing battle between HD-DVD and Blu-Ray may be over before we know it if Google has the bandwidth to provide HD content, and Apple has the charisma to get the industry on board with it. iTunes and iPod already have the user base to make such a venture successful, and for Apple and Google’s competitors, catching up may be nearly impossible.

Only time will tell if this scenario can, or will, play out. I would look to the beginning of 2007 for the first indications of this alliance. When holiday iPod sales have slumped and a new video iPod is released, the demand for high quality movie downloads will peak, and we may witness a revolution.

2 Aug
2006

Why I’m excited about Zune

Zune PlayerMicrosoft recently announced, and before that leaked, the Zune brand of media devices, and personally I’m excited about it. Why am I excited? In a word, competition.

I love Apple, and I love the iPod and that is exactly why I’m excited to see Microsoft enter the market. Not to watch them fail like some of you might be hoping, and trust me that won’t be the case due to the sheer amount of cash they can throw at the problem.

They entered the gaming market with an XBox that cost drastically more to make than the retail price and I expect they’ll do the same with Zune devices. Just have a look at the list of features:

  • 400 Mhz DPS processor
  • WiFi capability
  • 30GB or 60GB hard drives
  • 3.75-inch screen
  • Accompanying media store
  • Provide all existing iTunes purchases for free
  • Gaming capability
  • Community networking
  • numerous rumoured features (VoIP, Satellite Radio)

There is no way that Microsoft can produce this device and still price it competitively, unless they eat some of the cost. Again, looking at the XBox, they make money selling games, not boxes. With Zune they’ll try to make money selling songs, games, videos, and anything else the players can handle.

My point is that Zune is bringing a lot to the table in a market that is completely dominated by Apple. Interestingly, the Cupertino monster has a history of telling consumers what they want, when it becomes available from Apple. When flash-memory based players hit the market Apple said consumers want hard-drive based iPods, and that they did until Steve Jobs pulled a nano from his pocket and declared flash-memory king. Jobs also openly espoused that video was irrelevant on a music player, until the 5G iPod played video.

I’m hoping that Apple doesn’t try to steer the market away from all the features Zune will provide. And this is most likely not the case. Steve Jobs predicted in January 2006 that Microsoft would enter the market with an mp3 player. Apple is not surprised with the Zune announcement, and hasn’t been sitting around waiting for Microsoft to point the way. I hope Apple has been innovating and pushing the limits of their iPod line. I hope to see a new line of players rolled out at Job’s Keynote at WWDC, on August 7th.

Whether or not Apple drops new iPods boasting some of the same features as Zune, is irrelevant. What is important is that there will be another player on the field of end-to-end digital media products. This will force down prices and encourage innovation, and the winners will be the consumers with more choice and better value.

Full disclosure: I am an iPod owner, Microsoft Windows user and Microsoft shareholder.

13 Jun
2006

What Google Is Up To

With the recent release of Google Spreadsheets, and before that, Google Calendar, the search giant has unveiled a new focus. It would seem that Google is building an online alternative to Microsoft Office.

GMail not only matches the functionality of MS’s Outlook Express, but goes far beyond it. Take GMail and Google Calendar together and you have a completely portable mail and scheduling solution that embarasses Microsoft Outlook.

Now introduce Google Spreadsheets and there is a web-based, Excel-compatible spreadsheet application.

You can also count Google Pages in the group, as a replacement for Frontpage.

Add to these Googles acquisition of Writely earlier this year. Writely is an web-app word processor, and could be competitive with Micrsoft Word. When the Googleized version of Writely is released, they will have a complete online application suite. And best of all, its free.

I predict that at the time, or shortly after, the suite is completed, Google will offer premium versions of these services aimed at businesses. A virtual mail server via GMail; collaborative online document editing, management and hosting via Writely, Spreadsheet, and Pages; and widely accessible calendaring with Calendar.

Of course we must remember that Google is at heart a marketing company. They produce wonderful and useful technologies, but selling ads is what keeps them afloat. Therefore, look for a surge in targeted advertising.

First up will be Google Video Ads, relying on the video player technology already deployed in Google Video. The launch of Video earlier this year got many Google users to download the player, which will allow Google to serve up targeted video ads alongside search results or embedded within sites using AdWords.

Next, look for the Google Network, which will offer high-speed internet access free of charge, in exchange for viewing targeted ads. These ads may be persistent across your entire browsing session, offering links or videos relevant to the page you are browsing. I also believe that Google may be working closely with Mozilla Firefox to create a Google branded browser, which will have to be used in order to access the free Google Network. The roots of this network have been in place for more than a year while Google has been buying dark (unused) fiber laid across the US. Additionally, Google bid on providing a wireless network for the entirety of San Francisco, perhaps to be used as a trial run of being a service provider.

All-in-all, Google has been very busy and we will continue to see innovation and growth out of the previously search-focused company. Releases of Sketch-up, Google Earth, and Google Maps show some of the other areas Google has succeded in penetrating.

22 Mar
2006

Hide Table Columns with JavaScript Part 2

When I wrote the originial post about this topic, I had written a quick and dirty function as an experiment. As is the case with most programming, another solution became apparent after digesting the problem for a period of time. So here is a modified solution to the problem:

function toggleCol(strCol){
var ths = document.getElementsByTagName("th");
var tds = document.getElementsByTagName("td");
for (idx in ths){
if (ths[idx].className == strCol)
if (ths[idx].style.display == “none”)
ths[idx].style.display = “table-cell”;
else
ths[idx].style.display = “none”;
}
for (idx in tds){
if (tds[idx].style.display == “none”)
tds[idx].style.display = “table-cell”;
else
tds[idx].style.display = “none”;
}
}

To use the function, just give each of the td’s and th’s in the column the same class name. Then add a link that calls “javascript:hideCol(’columnName’);”. You will also need to define a CSS rule “.hidden {display:none;}”.
This works especially well with scripted table building, such as dumping lots of rows from a database. It makes adding the class name much easier.

Downsides:

  1. The function only hides the column. Now you can toggle the display of the column without a page refresh. Just make sure the link to restore the column is not inside one of the column cells.
  2. The columns re-appear on a page refresh. The next logical step would be to use a cookie to store user the user’s preferences.

22 Mar
2006

Some Site Statistics

Tonight I decided to check out the statistics for abdinoor.com. I was quite impressed with what I saw. This is not a big popular blog, yet. Hopefully one day it can be a good home to web developers. A place to discuss and a place to teach. But I digress.

There were 45 unique visitors in the first 3 weeks of March, up from 5 unique visitors in all of February. Nothing special here, but a nice ramp up. Probably due to links from comments I make at other blogs, Newsvine, and my sudden appearance on Google.

What really interests me, not only in my own stats, but on those of sites I administer, is the breakdown of browser usage. Here are the stats for abdinoor.com:

Firefox 444 69.9 %
MS Internet Explorer 99 15.5 %
Unknown 58 9.1 %
Safari 29 4.5 %

As you can see, Firefox has a clear majority amongst the visitors of this site. Not that it comes as a surprise. I would certainly expect those interested in web development to use Firefox and loathe IE. It is also nice to see a fair number of Safari users, it is my second favorite browser behind Firefox.

I’ll be watching the stats more closely over the next few months, and I’ll post more updates along the way.

6 Mar
2006

Assorted CSS Tips and Tricks

Over the last few days I have had some free time to refine the CSS of a couple sites / applications I have been developing. While refining the sheets I managed to answer a number of my own questions as well as discover some really cool (IMO) effects. Here are a few I’d like to pass on.

< hr / > Tags:

Styling hr tags can be a bit of a mystery, the rules don’t always do what you intended. Therefore most people leave the hr tags alone and are content with boring lines. I’m not one of those people.

  • hr tags are made up of a 0px line and a border. This is my contention based on many different CSS applications. You should style your hrs based on the border. For instance:

hr {
color: LawnGreen;
border-style: solid;
}

or
hr {
color: SteelBlue;
border: 5px ridge;
}

< a > Tags:

You can style anchor tags a million ways. Once you understand the basics of hover, active, link, and visited states, you can generally achieve any look you want. There is an argument out there for keeping anchors simple so as to not confuse users, but depending on the site and the audience, you can get away with some really clever styling without confusing the audience. Here is some CSS to create links that look and like buttons on hover, and have a realistic clicking action.

a:link, a:visited {
padding: 2px 4px;
}
a:hover {
border: 2px outset AliceWhite;
padding: 0 2px;
}
a:active {
border: 2px inset AliceWhite;
padding: 0 1px 0 3px;
}

The reason for the padding changes are to keep the text in the same place on hover when the border appears, and to move the text slightly to the right on active. That way when you hover on the link a button form appears, and when you click on it, the button depresses and the text shifts 1px to the right completing the effect. You can adjust padding and colors but this basic structure can acheive some nice results.

26 Feb
2006

Hide Table Columns with JavaScript

Here is a little JavaScript function I whipped up last night. I’m working on a large loan-processing site, and thought it would be nice to be able to hide certain columns when viewing lots of loans on the same page. Here is the function:

function hideCol(strCol){
var ths = document.getElementsByTagName("th");
var tds = document.getElementsByTagName("td");
for (idx in ths){
if (ths[idx].className == strCol)
ths[idx].className = “hidden”;
}
for (idx in tds){
if (tds[idx].className == strCol)
tds[idx].className = “hidden”;
}
}

To use the function, just give each of the td’s and th’s in the column the same class name. Then add a link that calls “javascript:hideCol(’columnName’);”. You will also need to define a CSS rule “.hidden {display:none;}”.
This works especially well with scripted table building, such as dumping lots of rows from a database. It makes adding the class name much easier.

Downsides:

  1. The function only hides the column, once the classname has been changed to hidden, there is no way to display the columns, other than looking through table cells for those with the hidden class and removing it.
  2. The columns re-appear on a page refresh. The next logical step would be to use a cookie to store user the user’s preferences.

26 Feb
2006

The Innagural Post

Welcome to abdinoor.com. I’ve set up this blog as a place to post and discuss the the technologies I use and the interests I have. I hope this site will become a community for web developers, where we can share and discuss all sorts of things.

More from Dan

Follow Me! Follow Me! Follow Me! Follow Me!
 
 
The Website Grade for www.abdinoor.com!