posts | comments
04Dec

Release Early, Release Often

No comments

As a software developer, I have repeatedly heard the phrase release early, release often.  But in the back of my mind, I have always wondered how companies handle customers when they release buggy software.   Well, the other day I finally got my answer and found it quite amusing.

After downgrading a failed major upgrade on software that we use, I called technical support to see if we could come up with a resolution.  As I was put on hold on the technical support line, the automated voice said: “Due to the excitement of release 11 (ahem..bugs), we are experiencing higher than usual call volumes.”  Brilliant, I though.  I am going to have to keep that one.

Categories: Uncategorized
29Oct

Google isn’t the answer to everything afterall

No comments

anti-google

I am quickly looking at life through a new lens.  Not to sound like a droid, but ever since my senior year of college, I have been discovering the importance of human interaction.

When I was going through school I was very focused on being the best software developer that I could be.  I had friends and everything, so I wasn’t anti-social, just more of an introvert.    In fact, I was even President of my fraternity.  However, I did not promote those social relationships as well as I could have.  Don’t get me wrong, I was never mean or rude to people.  It was just that I didn’t realize the importance of social interaction.

For instance, often when I was invited to go out, I stayed in and pushed forward a little more on the project that I was working on.  That probably brought me from a B+ to an A-.

What I should have done was taken the B+ then gone out and had a beer with some good friends.  Now that I am 5 or 6 years older (and wiser, I’d like to think), I am realizing the importance of human capital, and have been going out of my way to meet as many people as I can, in order to create valuable relationships with these people.  Especially since I am around so many intelligent and talented people.

This leads me to my point:  Google doesn’t have all the answers.  In the past, if I had a question I would just type it in to Google and wait 0.07 seconds for the results to return.  If I needed to talk to someone, I’d send them a text, email, or Facebook message.  Now I am learning to ask the people around me.  I have discovered that the people in my network know a whole lot more than Google (figuratively speaking).

It is amazing what one can find out about another person, just by asking a non-related question.  Start using your cell phone and lunch meetings instead of Google and email, and you too, will be well on your way to fostering meaningful relationships.  Just remember, it is not who you know, it is who knows you.

Credits:  Image from Visceral Observations

05Aug

USF College of Business Featured in USF Magazine

No comments

University of South Florida’s College of Business Administration (and in particular, the Entrepreneurship program) was featured in the newest edition of USF Magazine.

Read the entire spread on the Entrepreneurship program(PDF)

18Jul

USF Featured on Channel 10 News

No comments

Eliot Dill was recently featured on Tampa Bay’s 10Connect News program for his participation in the invention of the Pill Pal. The invention started as a class project but soon turned into a success. USF currently filed a patent pending on the product and is trying to license the product out for manufacture and distribution. Anyone interested should contact Jaideep at USF’s Patent and Licensing Office.

Read more about USF’s Entrepreneurship program or USF’s College of Business.

Read the full story and watch the video

From 10 Connects:

Tampa, Florida — Have you ever had a million dollar idea, but let it go as a fleeting thought?

We learned about a graduate program from one of 10 Connects’ followers on Twitter that helps students turn those concepts into reality.

The University of South Florida program teaches students how to create products, apply for patents, and set up businesses.

Recent gradate Jonathan Solomon didn’t invent the snap cap, but he’s capitalizing off it.

“Whether you have an idea, or you are starting a franchise or your own business, it’s being your own boss and having a drive to succeed,” he says.

Through the program he was able to identify an opportunity and he says he is now supporting himself through its distribution.

In a down economy, making a sale or starting a business doesn’t scare these students.

“I think everyone in this program views this economy as an opportunity. There are tons of good workers who can’t find jobs and that allows even better people to work with us than they would have in an up economy. And that is one of the biggest benefits of moving this forward.”

If a student in the entrepreneurship program invents a product that goes to patent and makes money, USF and the students split the revenue 50/50.

13Jul

USF Innovative Technology Challange First Place

No comments

Innovative Tech Challange Plaque

Eliot was on the team that won the University of South Florida’s 2009 Innovative Technology Challange.  The contest was hosted by the USF Center for Entrepreneurship at the College of Business.

View the entire article at USF.edu

Innovative Tech Challange Photo

09Jun

Easily Parse XML

No comments

How to Easily Parse XML

XML is used a lot on the internet and in business .  For instance, it is used by Blogs in a format called Real Simple Syndication, or RSS , to allow people to read a blog without actually visiting the blog’s website.  XML is also used to store reference information in web services and configuration files on many open and closed source products such as Instant Messager servers , web servers , and Oracle’s SQL Developer .

Since XML has become so popular in recent years, there are tools for most languages that make XML pretty easy to parse and handle.

Here are 2 tools you can use to parse XML:

1)  MagpieRSS for PHP

MagpieRSS is a great way to parse almost any format of XML clearly and concisely.  Simply include the file "rss_fetch.inc" and then access the entire XML feed as an array.

From their example page:

<item rdf:about="http://protest.net/NorthEast/calendrome.cgi?span=event&ID=210257">
<title>Weekly Peace Vigil</title>
<link>http://protest.net/NorthEast/calendrome.cgi?span=event&ID=210257</link>
<description>Wear a white ribbon</description>
<dc:subject>Peace</dc:subject>
<ev:startdate>2002-06-01T11:00:00</ev:startdate>
<ev:location>Northampton, MA</ev:location>
<ev:enddate>2002-06-01T12:00:00</ev:enddate>
<ev:type>Protest</ev:type>
</item>

Get's parsed to:

array(
title => 'Weekly Peace Vigil',
link => 'http://protest.net/NorthEast/calendrome.cgi?span=event&ID=210257',
description => 'Wear a white ribbon',
dc => array (
subject => 'Peace'
),
ev => array (
startdate => '2002-06-01T11:00:00',
enddate => '2002-06-01T12:00:00',
type => 'Protest',
location => 'Northampton, MA'
)
);

2) RSSutils Jar and Tag Library for Java

First, download and unpack RSSutils from here
.  Next copy 
rssutils.jar

and rsstaglib.tld
into your 
/WEB-INF/lib
directory.  Then add the following to web.xml
:


    <taglib>
<taglib-uri>/WEB-INF/lib/rssutils.tld</taglib-uri>
<taglib-location>/WEB-INF/lib/rssutils.tld</taglib-location>
</taglib>

Now you can reference the tag library in your JSP page similar to the following example:

    <%@ taglib uri="/WEB-INF/lib/rssutils.tld" prefix="rss" %>

<rss:feed
url="http://url/to/xml.xml" feedId="xmlFeed"/>
<b>Image: </b><rss:channelImage feedId="xmlFeed"/><br>
<b>Title: </b><rss:channelTitle feedId="xmlFeed"/><br>
<b>Link: </b><rss:channelLink feedId="xmlFeed" asLink="true"/><br>
<b>Description: </b><rss:channelDescription feedId="xmlFeed"/><br>
<ul>
<rss:forEachItem feedId="xmlFeed">
<li><rss:itemDescription feedId="xmlFeed"/><br><br>
</rss:forEachItem>
</ul>


Make sure you come up with a unique feedId
to use throughout the page, especially if you are going to be parsing multiple feeds on a single page.  Read a much longer rssutils tutorial here
.
Categories: Web Development
07Jun

Rounded Corners with The GIMP

No comments

Creating Round Corners

These days more often than not, people want rounded corners instead of the regular squares on images for websites, print work, and photographs.

It is true that this can be done in Photoshop and other expensive programs .  However, why pay all that money when it can be done very easily with the open source graphic editing tool, The GIMP .

Step 1: Download The GIMP and Install

The GIMP runs on any operating system so you can use it on Windows XP, Windows Vista, Linux, and Mac OS X.  Download The GIMP and follow the included instructions to install.  Installation should be very similar to any other install.

Step 2: Open and Create Project Canvas

First, open up The GIMP in your respective applications folder and create a new project (say 800 x 600 pixels, the average website size).

Next, click on the Rectangle Select Tool in the Toolbar .  If you don’t know what this tool looks like, mouse over each item until you find it.  Hint: It is usually the first item in the Toolbox.

Step 3: Create a Rectangle

With the Rectangle Select Tool selected, draw a rectangle on the canvas.

Step 4: Change the Color

If you want to change the color of the rectangle, you should do this now by selecting a new Foreground Color and clicking on the Paint Bucket Tool (Hint: it is the one that looks like the paint bucket ).  Once you have selected a color and the Paint Bucket, click anywhere within the rectangle.

Step 5: Round the Corners

Next, click on Select > Round Rectangle in the top menu above the canvas.  Play with the radius settings until you get it just right.  You can undo the rounded rectangle you just created at any time by selecting Edit > Undo .  Remember, the larger the radius settings, the more round your rectangle will be.

Categories: Web Development
05Jun

Call Web Service in Java

No comments

Consume a Web Service with Java

As I stated before, calling a web service in .Net is easy .  However, using a Java Web Service is a little more difficult .  This is not because .Net is superior to Java, but instead because of the various standards that Java allows for since it is open sourced.  In other words, Java can be extended and new standards can be developed, whereas Microsoft keeps tight control over their beloved .Net framework.

Step 1:  Download and Install NetBeans

First you must download and Java IDE such as Netbeans , Eclipse , or Oracle’s JDeveloper .  I have used all three and I would recommend NetBeans because I found that JDeveloper was a little behind on certian standards and Eclipse requires that you install additional plugins to allow you to develop with web services.  However, the latest version of NetBeans (6.5 as of this writing) comes with everything you need to develop and consume web services, including a choice of embedded web servers for development.

Step 2: Create a Web Project and Web Service Client

Next, create a new Web Project by clicking File > New and selecting Web Project from the list.

Once it builds your project, you must tell NetBeans what type of project you are developing.  You can do this by right clicking your newly created Project in the Projects pane and selecting New > Web Service Client .  If I remember correctly, this is where a wizard will prompt you for the Web Service WSDL that you are wanting to call .

WSDL stands for Web Service Definition Language and is a document that is generated when you build a web service to tell the applications that want to use it what methods are available to use.

Step 3: Call Web Service

Once your project finishes generating the local methods for calling the external web service, you should see a tree option under your project entitled Source Packages . Open this tree item and all items below it and you should see a Java file "*.java"Double click this so it opens, then right click > Web Service Client Resources > Call Web Service Operation .

Step 4: Modify and Test

Once the generation is completed, you should be able to reference the web service objects similar to the following:

WsNameOfService port =   service.getWsNameOfServicePort();
boolean tf;
tf = port.isReady();

out.println("Result: " + tf);

Enjoy and Good Luck!

Note: If your not getting the same menu items as me then you probably created the wrong project type in the first couple of steps.  For instance, NetBeans may not allow you to create a Web Service Client in a regular Java project.  Start over with a new project and ensure you are selecting the correct project types.

03Jun

.Net Consume Web Service

No comments

Consume Web Service with .Net

During the past 8 months, I have been playing with web services quite a bit – both calling and developing web services for my employer.  However, I had some trouble along the way finding information on the different standards of web services (such as JAX-WS and JAX-RPC ), implementing those web services on the server (Jboss) , and testing the services by writing a web service client (VB.Net) .

So I thought documenting the information I have collected would be useful for others attempting the same thing.  The next series of posts will show you how to write, deploy, and consume web services using a combination of .Net and Java.

Consume a Web Service in .NET

Calling a web service in Microsoft .Net framework is super easy.  Simply open a new or existing project, click Project > Add Web Reference , then enter the URL to the web service’s WSDL .

A WSDL is an XML document that is used to define a web service , such as Method Names and Parameters for those Methods.  Don’t worry, you usually don’t have to write this document by hand.  Yes, the programming gods have smiled upon us.  Most IDE editors will do this for you including Visual Studio and NetBeans .

After entering the URL as suggested above, just follow the wizard steps and .Net will take care of the rest for you.

Once complete, you should see Web References in the Solution Explorer pane in Visual Studio.  You can edit the Reference Name and URL in the Properties pane by clicking on the web service reference (whatever you named it) under Web References .

Now you can reference the web service object that you just created by typing "WhateverYouNamedIt. "

Go ahead and give it a shot!

20May

The Breakdown of Modern Web Design

No comments

This pretty much breaks-down a day in the life:

chart about web design