07/21/2008
.Net or .Not?

I have been working for the last two weeks on a project for FedEx where I am building a proof of concept for a utility that goes out to a server, downloads a file, parses that file, and then based on what it finds, determines what other files need to be downloaded. Its a very simple, system and should not be that complicated to implement… at least… you would think. But after scratching my head in confusion and surprise, I am left with only one conclusion. Microsoft’s .Net framework has very little in the way of Network architecture.

For instance, while there are things you can do with HTTP, the support there is lacking. You don’t have nearly as much control as you need to make things work. I can’t, for example, get the file size, or pick out just the header information from my documents. There is no support for partial downloads, or even the ability to recursively download or upload a directory worth of files. Their FTP support is even more lacking in depth. If I want to get the sizes of a batch of files, I have to recursively go through and get the file size of each and every file on the list. There is no way to resume or suspend downloads. There is absolutely nothing beyond a partial implementation (and a very convoluted implementation) of the interface.

After spending almost a week working on the system, I am left with the impression that the best way to work on this system would be to write my own FTP client library! Of course, I am loathe to do that, especially when anything I do will be copywritten and owned by FedEx right now, and there’s no guarantee that I’d be hired back. I don’t like doing work I’m not going to A) profit from or B) at least be used for shameless self promotion. Of course, writing this from scratch would take up a lot of my time at work. In fact, it would be horribly silly for me to do this, since there are doubtlessly other projects for which I would be better suited to writing.

But, since now I have convinced myself that writing the library wouldn’t be a complete waste of my time, and since I *might* even get some credit from my supervisor for writing such a library, I think I’ll go ahead and take on this responsibility until someone comes up and asks me if there’s something else I’m supposed to be doing.

After all, what’s the point of being an intern if not to A) not make a profit and B) be slave labor with no promised future?

07/17/2008

Sometimes, only a music video can say it best.

07/13/2008

So this marks the end of my 5th week at FedEx and I have to say that it has been a resounding success so far. I’ve made important contacts, proved my capabilities at my work, and for the most part shown that I would make a good addition to their team someday. Unfortunately, I feel like I haven’t done nearly as much as I could have to make higher level contacts. I know *of* the Vice-Presidents, but I haven’t gotten a chance to show my potential to them one-on-one.

This is sorta hard for me to do, I’m not the kind of person who just wants to walk up to someone really important and talk about my life. God, if my boss’s knew what I did on the weekends, they’d probably never want to be seen in public with me, much less hire me. So I can’t talk about my personal life (especially in a conservative company environment) and I don’t like playing sports, so that’s out too. I mean, if you don’t know how to play golf in this town, it’s like you don’t even exist. I know how to play sports… like softball, tennis, even golf… i just find absolutely no enjoyment out of them.

So here I am, with no way to converse with someone without making an ass out of myself. So I must resort to talking about my work. Well I have all these great ideas, but corporate life doesn’t lend itself well to new ideas. If I said “hey, let’s do everything in Java” they’d immediately point out that department A or B wouldn’t like it because they have their own pet projects. So I guess talking about new work ideas are out, though showing that I know about their existence is probably a good thing. Maybe I could talk about the work I’m doing? That seems the safest bet for making good conversation that’s relevant, but then I appear too one dimensional… it’s so hard to make a good impression overall I don’t know how people ever succeed.

So in other news, I found out that I’m really really special. Most of the other interns got their positions by who they knew in the organization. Someone’s aunt, or friend of the CIO or someone high up helped them get the position. I got the position strictly on my own merits and achievements. That makes me feel really really good, and at the same time makes me want to kick myself for not taking the inititive sooner and getting my computer science degree when I had the chance.

Speaking of chances, let’s talk about that. I’m about to get unceremoniously dropped from school for taking too many credit hours and not having a degree to show for it. How sucky is that? All those times I had to drop classes for one reason or another have finally caught up with me. Now I have to face the music. The reality is, I’m amazed I’ve made it this far in school. I really am. I have one degree and am on the verge of getting a second one. I don’t doubt that I will succeed in anything I do, but given all the obstacles I have had to overcome, both mentally and physically, I should give myself much more credit than I actually do.

Alright, so to sum up this month… life is good, things going well, can’t really ask for more from FedEx than what they’ve given me, and I really hope this leads to a job opprotunity, if not with them, than with another company.

I really don’t know what to expect or what to do

06/16/2008

Despite all my fears, despite all my self-handicapping and doomsday predictions, I actually survived my first week at FedEx and did relatively well in the process. There’s not a whole lot to say. My first day I was really nervous about being able to program in C#, and was even more surprised to find out that I’d be developing desktop applications instead of web applications. Which, of course, meant that I would have virtually no experience to draw from. At least, that’s what I thought. But it turns out that either designing an application isn’t as hard as it looks, or the work I did tinkering around with ResEditor with the Mac helped me out a lot… course that was almost 10 years ago. I managed to finish my first assigned project today, despite all my ravings about not knowing how I was going to do it. I even managed to throw in some extra, but helpful, features. My manager seems impressed with my work and my co-workers, I think, are warming up to me.

 

I thought you guys might be interested in seeing where I work, so I am posting some pics as well!

 

IMG_2847 [320x200] 

 

This is the outside of the building

 

 IMG_2848 [320x200]

 

This is the World Technology Center for FedEx

 

  IMG_2849 [320x200]

This is my little corner of the world… a cubical.. isn’t life almost perfect?

06/10/2008
FEDEX Internship: Day 2

Today was much better than yesterday… yesterday all I did was do all the pithy stuff that you have to get done like read the company policies and get all the paperwork done. It felt like i was in the way yesterday. Today I felt like I was productive. They gave me an assignment to complete work on a configuration file editor. But it’s be a VERY long time since I’ve done real application development and I’m nervous that I won’t get it right the first dozen or so times… oh well, at least I won’t be in meetings all day tomorrow so I will have a chance to really pull out the show stoppers.