|
|
|
|
|
|
New Blog Focus
Monday, September 19, 2005 3:29 PM
Ok, so if you've noticed, I haven't really posted all that much over the last couple of months...free time certainly does have something to do with it, but I think the real issue is that I'm not doing very much tech stuff that would be interesting to post about. I can't really talk about my research project because it involves some confidential information and such, so that's out, and right now, there aren't really a lot of things, life wise, going on that would be of interest. One thing I've been wanting to do is to work through the ton of self-help / personal productivity books (e.g. Getting Things Done, How to Win Friends & Influence People, 7 Habits of Highly Effective People, etc.) so what I'm planning on doing is allocating some team each week to make progress on those books (and perhaps some websites will be included too if useful) and then I'll try to condense the knowledge into a blog post (e.g. 1 or 2 chapters condensed into a page or so). Of course, this isn't a substitute for reading the books (the two I mentioned are great BTW), but maybe it'll be helpful to some of you out there - and it'll get me going towards my goal of getting more professional development into my week and keep my blog active - so a win-win. :) I'm probably going to start next week, so be watching for these new posts...hopefully they will provide some new perspectives - I know I completely missed a lot of this stuff in my CS program since business and professional development isn't even an afterthought in technical programs.
If any of this is interesting to you, you should check out "The Personal MBA" (http://personalmba.com) there are some great links there about business & professional development - tons of topics. It's a fairly new online community so it's still growing, but it's certainly worth a look as-is. One thread there was all about "Does College Matter?" which was interesting. (I believe college is extremely important - depending on what you want to do and the effort you're willing to put into it. If you're not going to put forth the effort and just want to party, then no, you're going to get out what you put in which won't be anything of value. But if you work to make the most of the experience, then you'll get more value than you can imagine. The other thing people miss is that they feel college is teaching you material - which it does to some degree - but the key point of college is to teach you to learn - NOT teach you subject X...but that's a post for another day. :) )
More to come...soon...
Switching Cellphone Carriers
Saturday, September 10, 2005 10:14 AM
Over the last few months, I had very bad reception with my cell carrt ier, Sprint PCS. Now I originally went with them because they were supposed to have the clearest calls of any of the major carriers, plus they had pretty good deals on cellphone data service. That was over a year and half ago - the signal was exactly what I expected for the first year or so - although it didn't work indoors (well, in a building with thick walls), I could always step outside and get a perfect signal. These days, the phone was dropping audio quite bad, not getting a good signal in places it used to, and sometimes incoming calls wouldn't register on my phone - I could have a perfectly strong signal and then I get a voicemail (and they didn't dial my voicemail directly - so there should have been a ring first). Anyway, I decided to give Cingular a try. Nearly everyone I know around here uses Cingular, so I could at least cut my rate plan in half since I can use free mobile-to-mobile to do most of my talking. The whole process of switching carriers was surprisingly simple...I brought my old cell number over to Cingular since it's out on a lot of resumes and such, and that wasn't a problem at all - in fact, after the new account was activiated it took less than an hour or so for my phone to start working with my old number which was great. As far as phone choice, I originally chose a Treo 650 - a bit expensive (heck, very expensive) but I thought it would be useful enough to justify the purchase. Turns out that the Treo I got was probably a bad unit - outgoing calls were garbled and connecting to the data network worked only about 50% of the time without restarting the phone. I really wanted to like the Treo - I used to own a Visor handheld (a VisorPhone too actually) which I liked until I tried to program it. :) But beyond the problems using the phone on the Treo, it also reminded me of just how much I've come to love PocketPCs. So yesterday, I took the phone back to Cingular and now I'm the owner of a new Audiovox SMT 5600 Smartphone (powered by Windows Mobile). I'm going to post a review of the phone in a couple of days - I just want to use it a bit first. Thus far (about a day with it now), I really like it. It does have a couple of flaws, one of which is a pretty big one (involves bluetooth headset and a locked phone keypad...more later), but I want to see if there are any fixes out there since the phone has been out for a bit before I talk more about them since they may be non-issues.
Starting up INETA chapter
Wednesday, August 31, 2005 5:05 PM
One of the things I find really helpful at the start of a semester is to make a list of professional & educational goals...I try to envision where I want to be a few years from now and then use that to determine the steps I can take now to get me there in the future...well, one of my goals for this semester is to establish an INETA group here at the University of Alabama. One of the challenges though, is making sure the content is in line with the audience - since .NET isn't something that is really taught in classes much around here and there aren't many companies in the area that use .NET, this would be a great way to expand awareness and build a community here that just doesn't exist right now. One thing I'm struggling with though is making sure the topic is such that professional developers would want to visit the group and not be turned off by the topics while at the same time getting those that might not even be familiar with .NET up to speed. Have any of you particapated in a local INETA chapter at your school? If so, I'd love to hear how things run there or any advice you might have on this subject (either in the comments here or at my e-mail address abyram (at) gmail (dot) com).
theSpoke v2
Tuesday, August 30, 2005 1:16 PM
Wow, I must say I'm pretty impressed with the new theSpoke! I really like the fact that you can browse posts by category now and that the archive links are there...before, any blog on the site was not indexable by a search engine since the only way to get to old posts was via the calendar and that was all done via postbacks / javascript...but now, the days on the calendar are regular links and the archive links are regular links so previous blog posts are going to be indexable now just by pointing google / msn / whatever at your blog's home page. I like the new color scheme too. The only thing I haven't figured out yet is the "Who Bar"...I think I get the concept there, but I'm not sure why we have that... Very neat overall though.
127.0.0.1
Wednesday, August 24, 2005 3:31 PM
Well, summer is over and I'm back home now...classes start back today...well, meetings about classes start at least. The internship experience I had over the past few months was great and I am really looking forward to using the new knowledge this semester - especially with the MIS project team (I'll post more about this in a day or so). It looks like this semester classes are just going to be on Tues & Thurs which is great...granted, that means Tues & Thurs are pretty much shot for the whole semester, but I'd rather do that than have one or two classes every day of the week (except Friday - the business school doesn't have classes on Friday...every other part of campus does, but somehow the business classes always work around that.) This semester should have some pretty interesting challenges in several different areas. I'm hoping to be able to get INETA started here this semester, get more visitors to my ticket exchange website ( www.bamatrader.com - if you're looking for Alabama tickets, check it out ;) ), and then a couple of little side projects that I'll talk about in the future...in addition to the regular course load. Anyway, time for the first meeting of the day...more to come.
Strongly-typed Session Objects
Friday, August 05, 2005 10:28 PM
Until this summer, I didn't see anything wrong with putting something in the Session object by saying: Session["Something"] = MyVar;
Of course, that's a perfectly legal way to use the Session object and it works quite well. So what's the problem?
Well, let me give you an example of why this can be bad. On one of the big projects I'm working on this summer, we use the Session object to store GUID values which are the keys to tons of things in the system (e.g. you use this GUID to look things up in about 20 different tables). What we're building is basically a massive ASP.NET-based wizard for doing some business tasks. So it's quite critical that this GUID is passed between pages in a way that each of them can understand. Well, the situation has now come up that some people started putting the GUID in Session["GUID"] (which is right) but as a string instead of a GUID object. I, on the other hand, am storing my GUIDs in the same Session location, but I'm storing the real GUID object.
Because you can't cast a string into a Guid, we have to have two sets of code to convert Session["GUID"] back into a Guid. Now you can solve this problem by having standards and enforcing them, but that still leaves room for people to make mistakes and still get it wrong. After having to deal with this issue for a couple of days (we're still trying to find every place that sets these Guids so they can be standardized), I am really thinking making a wrapper for your Session objects would be a good idea. Using the wrapper idea on the project I'm currenting working on, I would have a property of type Guid that will still set and get the Session["GUID"] object, but it will be the only way to get a Guid in or out of the session...this way, it doesn't matter if it's stored as a Guid or string - you're code never knows. And you don't have the problem of people storing the same thing in multiple places (or at least it would help with that).
I know this is all fairly obvious stuff, but wrappers (for stuff like this) and all the people wanting strongly-typed collections didn't really make a lot of sense to me until this summer. Of course, I saw the benefit it added, but I didn't realize why that was so important, but I certainly know now and in the future, my code is going to look quite different.
Interviewing
Wednesday, August 03, 2005 3:32 AM
So today was my "intern interview" day - the day where each intern goes through three interviews, back to back, to discover if he/she is a good fit for the company, has interest in the areas of MIS, and how he/she stacks up against the requirements for the entry level position of Analyst I (for MIS). The first interview, called "General Fit", was really pretty straight forward asking about work preferences, would you consider accepting an offer if one was made, what location interests you the most as far as an initial work location, how has the internship gone, etc. A couple of questions are thrown in at the end to make sure you're ready for interviews 2 & 3 since they start focusing on more behavioural type stuff. Interview 2, which is officially called "Interview Guide I", was where you are basically compared against the standard desirable traits / qualities of an Analyst I position. They even tell you, this section is examining analytical skills, tenacity, initiative, etc. This one is the one I found most difficult - not because the questions were that hard, but because this one (and the following one) are both asking you to draw on prior experiences to answer the questions and the questions vary quite a bit in this section and it's hard to not repeat experiences. I know it's not terrible to have to repeat things, but my goal was to use as many experiences I've has as appropriate based on the question - so I had a chance to explain all of the things I've done in the past and actually say what I *really* did instead of leaving some of those experiences up to resume bullets. So after 45 minutes of Interview Guide I, I started Interview Guide II, which was another 45 minutes. This interview was very similar to Guide I, but it was more focused on how you handle certain situations, how you think about a problem, and how you get the results you desire. This was your typical behavioural interview. This one is usually the most difficult to me because it's very detailed as far as the type of information they are looking for and if my experience was a while back, sometimes it's hard to remember those details. This interview did surprise me though in that it went into more technical questions than I was expecting - not the kind you'd see at Microsoft, but things like "what is your preferred programming language & why?", and then getting into "tell me about a system you designed where X happened" etc. Not like programming logic questions - still about the logic used to solve the problem and the results obtained, but it was focused on actual technical experiences instead of more general experiences.
Overall, the whole thing went really well. One thing that helped me though is coming up with a list of projects & experiences ahead of time. I had some idea of the types of things I would be asked about, but not the actual questions - so I tried to think of experiences where I would have seen something the questions may ask about. I tried to have at least 4-6 projects for each interview so I don't keep talking about the same thing over and over and that really seemed to work well. I will say you should double check spelling on your resume though...I always do that, but somehow, it didn't work this time - I tend to spell implement like "impliment" and that made it on to my resume. I think something in Word keeps disabling my spell check because sometimes it doesn't catch words until I actually ask it to check the document and I forget that sometimes because I'm thinking it's already checking. Oh well, it's not a huge deal - and I've used this resume several times - and had it reviewed quite a lot actually with no one catching this - but still, not exactly the impression you want to make on someone that is interviewing you. :)
Quotes on the Importance of Design
Monday, August 01, 2005 10:57 PM
Joe Stagner posted some great quotes on the importance of design - not just in software, but in everything we do. I think those quotes are all very true. Of course, great design without a great product is pointless - so you have the best "designed" item, but if it doesn't serve any useful purpose, then it doesn't matter. Of course, I also think that if the product doesn't serve any useful purpose, it can't really be considered well designed. UPDATE: Fixed the link...apparently Joe cleared out that post from his personal blog and now it's just at his MSDN blog as Robert pointed out.
Research Experience
Friday, July 29, 2005 3:48 AM
For the M.S. in Enterprise Integration that I'm getting in conjunction with my MBA, I have to write a research paper in order to finish the degree - (same concept as a PhD type program, but it's not a thesis w/ defense or anything as involved as that). I didn't realize until now just how hard it is to narrow down a topic enough so that you can actually write a paper on it. We're constrained by the fact that our paper has to be related to systems development in some way, but beyond that, it just has to be a "doable" research topic. Right now, I'm looking at the maintenance phase of software development and how you can capture experience / knowledge in a way that adds value to current and future maintenance. I started out at a high-level wanting to look into knowledge management and this is where I've ended up after a couple of months of digging around in research articles. Anyway, I was just curious if any of the Spoke community is working on a research paper and what topics you've chosen to look into.
First Tire Change
Thursday, July 28, 2005 3:58 AM
Wow, I just had to change my first flat tire and that took way more effort than I had imagined. I wouldn't have even been able to get the tire changed if it weren't for 2 of my friends that happened to be kind enough to help. Geez, I have a battery powered jumper pack / light / air pump that I have always used in the past when there was a flat, but this time, the pump just stopped working. Not sure what happened, but it's not but a year or two old so that's surprising that it has already died on me. Oh well, I was going to post something more interesting today, but it's too late for that now...but, there's always tomorrow. :)
First Years @ Microsoft
Wednesday, July 27, 2005 2:03 AM
For those of you that are interested to know what it's like to work at Microsoft right out of college, you should check out Steven Sinofsky's post over at blogs.msdn.com. Really gives you a great idea of what type of experiences you can expect as you start out. (And I imagine these experiences aren't unique to MS either so even if you don't want to work for MS, you might want to check it out.)
Side-Business Software
Tuesday, July 26, 2005 12:11 AM
Ran across this article by Jason over on 37signals.com and found it pretty interesting. He thinks that the "most innovating" software in the future (at least in the next 10 years) will:
- Be Web-based
- Be built by small team
- Be self-funded (as far as the company behind the software)
- Be for "side-businesses" (or at least tiny companies he says is 1-10 people)
He points out that this market is greatly overlooked and people looking to start a side-business want a new type of software that helps them do business without the learning curve of scaled-down enterprise applications or the IT overhead associated with larger packages / non-web software.
I'm hoping that Jason is right on this...that's one of the motivations behind the small software company I want to have. Although I do have to say I believe the first assetion, that the software will be web-based, is not one I agree with. I can understand what it looks that way, but I really do believe smart clients are the future. Web Apps are certainly getting some amazing capabilities and with browsers supporting more advanced features (although the stuff known today as AJAX has actually been around quite a while - I wrote an application that used VML - which is long gone now - and async web service calls via JavaScript 3 years ago...granted there were some bugs, but it worked...anyway, that's a bit off topic.). But I see so much potential out there for smart clients. They just provide a much better experience to me. Plus, if your net connection goes down or you are on the road, you can take your data with you...but that's a discussion for another post. :) Interesting article though...so if you want to build software, keep the side-business market in mind.
Home of the Future
Sunday, July 24, 2005 5:09 PM
This morning I saw Joe Calev's post about a morning in the home of the future. This is something I've really thought about too - especially since it'll be time to buy my first house in the next couple years (or even year...depends). I know the first house I get won't be anything special - technology wise - but when I get to build my own house though, I really want it to be capable of basically everything Joe Calev outlined. I've got an even more detailed wakeup routine I'd like the house to do: First of all, it knows the time I need to wake up based on the day - e.g. on a workday I'd typically wake up around 2 hours before I need to be at work - but even better would be for the system to know the weather is bad today and several accidents have happend that I will run into on the way to work, so it compensates for that and wakes me up extra early to make sure I'm on time. When the times comes to actually wake me up, the system can raise the lights in the room to simulate sunlight (or open the windows depending on how everything is setup). The system can also verbally tell me to wake up and get out of bed - perhaps it even has the ability to see where I am in the room and if I fall back to sleep, it could continue the verbal prompt until I get out of bed to make sure I don't over sleep. Then it's back to the same routine Joe outlined, except I'd like the system to also summarize what I have going on that day (e.g. my agenda & any tasks I need to complete or needed to have completed) to give me a feel for how things are going to go. Of course while I'm getting ready, the system can also preload my car's system with music / podcasts / etc. for the drive to work, plot a new route in the car's navigation system if needed because of traffic, and sync my pocket PC with all the blog entries & news I would be interested in for the day. I don't see why that couldn't be doable in 5 years or so - I really don't see why it isn't doable today - all of the parts are there, the software just needs to be created to enable this (well, maybe a little more hardware work is needed, but not much). I know Microsoft's Smart House project (I think I saw it on HGTV one day a while day) was quite interesting and very much along the lines of my ultimate vision for the kind of house I'd like to have one day. So what about you? Any thoughts on what you're future home will be like? Would you even want it automated?
Google Maps Gets Upgraded
Saturday, July 23, 2005 5:05 PM
Wow, I must say I'm really impressed with the mapping technology Google has going right now. They have been able to combine the satellite and map views into a hybrid view - and that results in a really useful map. I used the satellite view when I moved to Knoxville this summer to check out where everything was, how to get to work, etc - and it was really useful. I know Microsoft has had TerraServer around for a LONG time and I used to check that out every once in a while, but this latest google hybrid map is one of the most useful maps I've seen. Check it out here.
|
|
|
|
|
|
| | Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|
| 26 | 27 | 28 | 29 | 30 | 31 | 1 | | 2 | 3 | 4 | 5 | 6 | 7 | 8 | | 9 | 10 | 11 | 12 | 13 | 14 | 15 | | 16 | 17 | 18 | 19 | 20 | 21 | 22 | | 23 | 24 | 25 | 26 | 27 | 28 | 29 | | 30 | 1 | 2 | 3 | 4 | 5 | 6 |
|
|
| | |