I found Blund Beta since it was a referrer to YumDrop the other day. It struck me as a cool way to show a directory of sites that you’ve found and wanted to catalog. Then that got me to thinking some more. Why not use a layout/template such as this for link directories? Link directories are usually a mess of links to various sites. But Blund gives you a nice sharp image and a description to look at. Most people would rather see an image than a link or some text because we’re visually oriented. And the better the image for the site, the more likely people would be to visit it.
Category Archives: Development
Radiant CMS Search Extension
I was evaluating Radiant CMS for a site Kyle and I are developing, and couldn’t for the life of me find any documentation for the Radiant CMS search extension (though there was a thorough doc for the mailer extension). So here’s a little example of what I came up with looking at the ruby code for the extension itself.
<r:search:form label="" />
<r:search:empty>
<h2>No Results</h2>
</r:search:empty>
<r:search:results>
<h2>Search Results</h2>
<r:search:results:each>
<r:search:results:content />
</r:search:results:each>
</r:search:results>
In a nutshell, this will show “No Results” in an h2 tag if there were no results found, otherwise, the search results for the query will be displayed below the search form.
Here are some of the search tags
- <r:search:form> will display the search form (I modified the code to add the button)
- <r:search:empty> renders the html block if there are no results
- <r:search:results> renders the html block if there are results
- <r:search:results:each> renders search results
- <r:search:results:each:content> will render the content of each search results
What Did You Really Learn In College?
Do you ever think back to your college education where you were supposedly learning the basics on how to be a good software developer (or Computer Scientist in my case)? Think of all of those math courses (Differential Equations, yuck), those theoretical courses, etc. etc. Well, now that I’ve been out of college for almost 7 years, I can say that I definitely got a quality education for my $120,000. I can say that degree I have looks really pretty on my wall. And I can also say that college exposed me to my start in writing software applications, mostly UNIX console applications. Last but not least, that degree got me a job that I’m lucky to not have been without since I got that degree.
But what did I really learn that was useful on a daily basis? Basically, I learned how to program and learned a lot of useful things that could be applied to writing effective and efficient software systems. But did I really learn how to be an effective software developer.
I really don’t think I became an effective software developer until I had been out of college for about 3-4 years. There are principals that I wish that I had been exposed to earlier. Being a Computer Science major, I suppose I was learning all the tools it would take to do any job in the computer field from being an IT guy to working with artificial intelligence. What I probably really needed was a degree in Software Engineering.
Writing Reusable Code
Recently for our YumDrop.com site, I was asked to put together a new page that we could use to sell products that we still had in stock which were discontinued. We wanted to be able to display only those items on the page to promote their sale. The obvious goal was to get rid of the inventory.
So as usual, I fire up Visual Studio 2005 (our web application is written in C#) and get to work. As soon as I get started putting the page together I had the following thought:
“Man, I’m glad I wrote that thumb item control to display any product item.”
What I was thinking of is a .NET control I built to display any given product on our site. This consists of the product thumb image, a link, its name, and price. All you have to do is tell the control what size image you want to display. The cool thing is this can be used ANYWHERE on our site. It can accept data from any source (database call, xml, etc.) and display it. Having such a gem saves me a lot of development time basically piecing the same code that appears on 5-6 different sections of our site.
I know what your saying now though. Everyone knows about writing reusable code. What I’m saying is that I don’t think enough developers actually do it. I think many times, as developers up against deadlines, are just trying to get our projects completed (which is an admirable goal, one I strive for every day), thus we sometimes write non-reusable code. Don’t forget to ask yourself the following each time you write some new snippet of code:
“Am I going to need this functionality somewhere else in my application or even another application tomorrow, the next day, or 5 months from now?”
I think you’d be surprised that a lot of times, the answer is yes. If you write your code so you can reuse it later, you’ll thank yourself, like I did, months later when you find yourself needing that functionality again.
Converting Ecometry EDI Files
A while back, we started having to deal with EDI files in Ecometry for Fright Catalog. We started charging for our catalog and wanted a third party to ship them for us. Unfortunately, the third party couldn’t handle EDI files, they needed a CSV file and annoyingly, Ecometry’s software couldn’t do it for us. Not wanting to create a CSV file for this by hand, I created a C# console application (requires the Microsoft .NET 2.0 Framework) to parse these EDI files for me into a CSV file. It will output the following:
- Customer Number
- Company Name
- Title
- First Name
- Middle Initial
- Last Name
- Address 1, Address 2, Address 3
- City
- State
- Postal Code
- Country
This was great, until it came time to processes these orders. Now I needed to generate a ship confirm batch file as specified in the Ecometry 7.x documentation. Not wanting to do this by hand either (especially since I’d need to do this on a regular basis) and being a fan of the DRY (Dont’ Repeat Yourself) principal, I extended my little utility to create Ship Confirm Batch files for Format 256. Other formats might be supported later, contact me if you need them, maybe I can help.
So now I have a cool application that will parse these EDI files for me in the formats I need. If you’re interested in getting your hands on it for your own use, I have a download available with the executable. Let me know if you have any issues with it or want to see some new features.
Why Can’t Programmers Read?
I just read a post linked from Reddit about why programmers can’t read. It was in response to the FizzBuzz problem that is used to measure a programmer’s basic competency during an interview (I was able to complete my solution in C in about 3 minutes, including ssh’ing into my linux box and opening vi). The issue is that so many programmers get the solution wrong is because they can’t read, i.e. they don’t read the problem correctly, thus get it wrong. So, what exactly is the problem here?
The author said, “Perhaps it’s time to bring back more word problems in our curriculum”. This is good, but I think we need to go beyond that statement. A lot of schools at all levels (grade school through college) don’t teach reading and writing properly or put enough emphasis on it (especially at a technical school) . I went to WPI and as part of our education we were required to complete three major projects, all three of which included writing a paper.
I was told several times by my professors that I wrote well compared to my peers, which I found odd because my mother always complained about how I didn’t write all that well (she blamed it on my grade school and high school education…i.e. not learning to diagram sentences until I took French in 7th grade). But we weren’t required to take a literature class at all in the 4 years we were there to make sure we wrote these papers properly. Not a single one.
I’m not sure about other technical driven schools, but I really think we need to spend more time on language and writing than we do. Its not enough to learn the math and science skills to be a successful engineer, but you need to know how to communicate well, both on paper and orally. Let’s start teaching how to read and write properly (like our parents and our grandparents were taught) starting in grade school and continue to do it until you graduate college. Make sure our students continue to take literature courses in college to support the technical papers (and later on technical specifications) that they have to write.
Bookmarking Icons
In redesigning my blog, I was going to include bookmark icons for digg, reddit, del.icio.us, etc. under each blog post (I actually had them in the code at one point). Then I read an article over at 37signals that changed my mind.
What Matt has to say about these icons caused the proverbial “light bulb” to go off in my head. I’ve got a new blog and I’d love to get noticed. Write cranked content about stuff that I’m passionate about and knowledgeable on. If the content is good, like Matt says, then people will come. People will notice. My stuff will end up on digg, reddit, and all those other “news” sites out there. So why push the issue?
New Blog Design
So I finally took it upon myself to create my own WordPress template. I’m fairly inexperienced with CSS, but with a little help and having looked at what other people have done, I don’t think I did that bad with it. Hope everyone enjoys it!
Generating Leads and Closing Deals
I’ve recently been trying to get some additional income by doing additional web development projects on the side. The first thing I’ve noticed is it’s tough to generate leads, especially when it’s not your full time job. I have learned that you basically just need to keep your eyes and ears open and to also stick to stuff you know and try to leverage what you already do well to your advantage. Being in the right place at the right time is usually the name of the game, especially when you’re getting started.
Secondly, I’ve learned its hard to close deals once you’ve generated a lead. A lot of people (mostly the non-web savy ones it seems) don’t appear to know what it takes to build a quality web site. Nor do they value what your talents are. In the end though, I think it maybe just has more to do with people wanting something for the least amount of money than anything else. The key will be to be fair and upfront with people and hopefully work out the details and build great applications!
One thing I’ve tried to not do is just drive leads away. I try hard to work with them on the feature set and the price. So far, nothing bad has happened. Things just don’t move quickly.
New YumDrop Site!
My buddy Kyle and I just got finished rolling out a new version of the YumDrop.com Lingerie site! Its super easy to navigate now and there’s lots of new product for people to look at and buy. Here are just some of the new features in this version!
- Product specific size charts
- Product specific materials
- Side-bar navigation
- Zoom images on all thumbnail images
And don’t worry, we’ll be hard at work on new features for upcoming versions!