QWANtify is excited to announce, effective May 1, 2010, their purchase by Safe Bridge Solutions, Inc. of Madison, WI. Read More »

From the QWANtify Blogs

401K

Probably not too many people would like to talk about how our 401K accounts are doing these days, especially because of the recent stock market crash. I just would like to let you know that we need to learn from that lesson.

We have heard about diversification as a strategy to keep profits or to maintain them and grow, or not to lose too much money. Or probably buy companies with good balance sheets or those that give dividends, etc now and the market will take care of their growth in the future or in the long term. It looks like they worked until last October 2008 when the stock market suffered a big decline, and is not recovering so far. I read that 80% of the fund managers are not doing very well and had losses, probably between 20% – 40% just last year 2008.

I remember I was 70% in cash, 10% in bonds and 20% in stock funds by the beginning of 2008. A friend of mine was more diversified than me and enjoying the nice ride from 2005-2007 while I was moving from stocks to cash little by little during that time.

Probably, I was not so lucky and missed the opportunities in 2006 and 2007 because I was more than 50% in cash at that time. After October, we all know the story. All of the gains from the last 5 years are evaporated.

I have learned that we also need to have the concept of money management in mind to avoid or minimize losses. It is always good to be checking our accounts from time to time. We need to be more knowledgeable about how the stock market works, and make adjustments to our portfolios from time to time.

Filed in: Team Member Blog Comments (0)

Maybe it’s just my ADD but…

…I find it increasingly confusing to sort out the multitude of different frameworks available in the Java web development space. I seem to remember being pretty darn productive writing plain ‘ol servlets with JSPs. OK, OK, I did use custom tag libraries, but that’s all. Give me a simple ORM framework (not Hibernate, I said simple) and a simple MVC framework and I’m good to go. I really start to chafe when it comes to view frameworks like Wicket or Tapestry. IMHO, these frameworks make it extremely difficult for someone to start new on a project and understand how to fix something that might be wrong. As a consultant, one of my goals is always to create very maintainable code. If you compare that way of working to a pattern, then using some of these view frameworks is a great example of it’s anti-pattern. I just wish more people would see the value of keeping things simple and not always be looking for a tool to throw into the mix to solve a problem that could be solved in a more simple way with a little forethought. I hate to think about how much time (i.e. money) is wasted by IT employees world-wide who are tasked with trying to evaluate some of these frameworks with the goal of choosing one over the other.

“They tell me I have ADD. Look! A Chicken!”

Filed in: Team Member Blog Comments (0)

Database lookup tables

This past year I have been doing a lot of database design work. One of the things we had to decide was how to handle look-up codes for things like states. I was told that we would be breaking out each type of code into its own table. Each look-up table has approximately these columns: code, name, description, enabled, created_date, and updated_date. At first I was indifferent to the design since it seemed fairly clean. I noticed it was using the code as the primary key instead of a surrogate key but I let it go.

We have been using these tables for months now and we have grown to have around 100 look-up tables. I’ve decided that maybe this design wasn’t the best way to go. Here is how I came to this conclusion:

1) When querying our main table we often have to retrieve the associated look-up tables as well. This has resulted in queries that have 20 – 50 table joins in them causing a noticeable decrease in database performance.
2) Creating an application to edit the data for a code was more complicated since we had to search across 100 tables instead of only a couple tables or even just one.
3) Given that we used the code as the primary key we had several situations where the code changed and we had to update the references across the database. I was talked into this one with “that code should never change” from the business. If a surrogate key had been used these code changes would not have been as painful as they were.
4) Since we are using hibernate for all our database tables we also had to create an additional 100 hibernate models for these tables. This added some significant development time to the project.
5) Another thing that bothered me is that we kept creating these tables and they all looked exactly the same. Kind of felt like copy and pasting the same bit of code over and over again.

For these reasons, I have decided to use a single table in the future for look-up codes similar to the structure above except adding a discriminator column called code_type or type. This type column can be used for grouping related codes together in the table and returning a specific code set. Couple of notes about this new design:

  • If a system so many codes that the table actually gets so large that it starts to perform poorly it may be necessary to create a couple of tables. For most systems, however, this is an unlikely problem since most databases can handle millions of records in a table effectively and codes tables don’t tend to grow much.
  • Queries may get a little interesting when you have to join multiple code groups in the same query. Just remember to use table and/or column aliases to help keep the joins clear.

Filed in: Team Member Blog Comments (0)

Heart Healthy Month

February is an important month for me. This is the month that serves as a much needed heart health reminder. For both men and women it is the number one killer. However, for women the symptoms aren’t always as noticeable. Symptoms like indigestion seems like a common day issue but for some it can be a symptom of a heart attack. Half a million women die every year from heart disease. That’s roughly one woman every single minute.

For me, this is a personal issue. Not only am I a woman but I come from a family with heart disease that runs very deep. February 8th I tried out for the national “Go Red For Women” spokesperson. The first question they ask you is “what is your story”. For me, my story started because I was even born. It started before my parents met and even before my mom graduated from high school. My mother’s father died of a massive heart attack while teaching at the age of 44. At the time my mom was 16 years old. Her youngest sibling was five years old. Now that I am in my late 20’s I have been a witness family members dealing with heart disease. Angioplasty’s and Quintuple bypasses are things I know all too well. Although I have been getting my cholesterol checked since I was 22 I know one day it might be a problem.

I wanted to try out for the spokesperson to represent the younger generation that needs to make good choices now. Too often the fast pace of today’s world drives our choices of fast food and lack of exercise. Although, I don’t think I will be selected for the national spokesperson it was an experience I will never remember. Seeing all the people at the event just showed me how many people have a story like myself. The event workers and participants were so supportive. To top it all off I had the support of my husband as I waited for my interview. After that, him and I took our “Diva” shot. Decked out with red boas and red glittery glasses was a fun way to finish off the event. We even got our 15 seconds of fame by being shown on the news.

Heart disease is very imbedded in many of my family members, my mom included. It definitely makes a person think about what is important in life. I’ve recently made a promise to myself to be on the computer less and to experience life more. I have been making an effort to keep in contact with friends and family better than I have in the past. It’s too easy to get caught with work and the normal daily routine. Then the days just kind of blur together without any events standing out. I hope to have many more memorable moments and stories this year. Besides, heart health month reminds us that life is short and we best enjoy the ride.

My hope is to do what I can at a local level and hopefully at a national level to bring awareness to preventative measures and about heart disease. I’d like to remind everyone to think about their heart health not just this month but every month. Even better, think about your heart health every day. Make the heart healthy choices as often as you can to reduce your chances.

Live heart healthy every day.

Filed in: Team Member Blog Comments (0)

Sound Guy Disguised as a Consultant

I’m not the type of computer consultant that goes home after work and spends hours on a computer. Aside from checking email, and helping my kids with their homework, I avoid computers as much as possible when I’m not at work. I don’t participate in any of the online social networking sites and I have never blogged, until now. That’s not to say that I don’t sustain the geek side of myself through other means…

Filed in: Team Member Blog Comments (0)

Why TV Is Not a Right

I have to admit; I was excited when I first started receiving a digital television (DTV) signal at home back in 2005. At that time, I had an old projection TV that was capable of displaying a digital picture, so I had taken the plunge and bought a used set-top digital receiver to see what this DTV thing was all about. I have to admit, the seventy-five bucks I spent on that receiver was definitely worth it, as the picture and sound were nothing like I had witnessed before watching over-the-air TV programming. Now while some might think I was an early adopter of this technology, the truth is I was already behind as over-the-air DTV programming had already been in place in the top 10 US-markets since 2002, and had already been around in some areas since 1998 (41 TV stations to be exact).

I immediately began telling my family and friends about this…

Filed in: Team Member Blog Comments (0)

Lightning in a Bottle

Or at least in Thunderbird.

I haven’t used Windows on my personal computer for about six years or so. At the time I made the leap into the Linux [1] realm full-time, I figured that I could do anything I needed to in Linux. There’s usually an alternative to pretty much any Windows program. Or so I thought. I’ll admit to keeping around a copy of Windows XP running in a virtual machine (Sun Virtualbox [2]… it’s a really great product. Free, with full USB 2.0 support. Take that VMWare [3]!), but I don’t really use it for much. Ok… mostly I needed it to setup my new printer (HP, are you listening? Why don’t you make your networked products accessible to Linux? Why don’t you allow network setup via the printer’s LCD screen?).

One of the few things that I couldn’t find a good solution for was some sort of calendaring program. Windows has an immediate entry here with Outlook. I’ve never been a huge fan of Outlook, but it gets the job done in typical Microsoft fashion. I was happy when Google came along with Google Calendar since that gave me a way to at least create calendar entries and setup reminders for things, but I still missed the integration on the desktop that something like Outlook gives.

I subscribe to Cory Doctorow’s RSS feed [4]. His most recent entry talked about about a product called Flashbake [5] that uses Python and Git to create a snapshot repository for writers to allow a writer to keep versioned copies of their documents along with metadata pulled from various sources at the time the periodic snapshots are taken. Pretty cool stuff. He also included a bit about a Thunderbird add-on called Lightning. Lightning [6] is the plugin version of Mozilla’s Sunbird, a calendaring application.

This is what I’ve been waiting for! It brings Outlook style calendaring into the Mozilla Thunderbird realm. So far it’s worked nicely. You can create calendar entries for appointments, meetings, and tasks. You can invite people to appointments. You can share your calendar. You can interact with Google calendar. Everything I wanted. Granted, I’m not a calendar power user, so your mileage may vary, but it’s a decent product.

[1] – http://www.gentoo.org
[2] –http://www.virtualbox.org/
[3] –http://www.vmware.com/
[4] –http://craphound.com/
[5] –http://bitbucketlabs.net/flashbake/
[6] –http://www.mozilla.org/projects/calendar/lightning/

Filed in: Team Member Blog Comments (0)7lightning, 7mozilla, 7calendaring

The state of our economy

“Times are tough and it only gets worst by day”. For the past week am avoiding watching any news on CNN as it only depresses me more to see the condition of our economy. To add to the misery the unemployment rate is increasing every day and the new $800 billion so called stimulus bill has no gaurantee that it would get us back on track or not.
So what do you guys think…..
Is this stimulus going to work?
Is the economy going to recover in 1, 2 or 4 years.
Share your thought!!

Filed in: Team Member Blog Comments (3)

Page 8 of 22 pages « First  <  6 7 8 9 10 >  Last »