Motivation by general pride in your work and refusal to compromise on standards will drive you to do your job well, but it won't drive you to be "motivated" in the sense of wanting your job to go well.
As a programmer who has gone the MBA route (will be done in the Fall), I have to say it's been positive for me. Not because I can point to it on my resume and say "look what I have!" or "look what I'm getting!", it's been positive for the following reasons:
a) It's increased my ability to communicate clearly in small and large groups.
b) It's given me great context regarding where IT and programming stand in the overall business model
c) I've met many professionals around the area in all industries
It's contributed very much to my personal and professional growth, and I haven't even finished yet.
But should you just go get it? Only if it's right for you. Know yourself first, and what you want to do with your life. If it fits in, then go for it and it'll be a great experience.
Exactly. If you love what you do, you have a much better chance of being great at it. So switch if you don't feel programming is for you.
Programming experience is still valuable, even if you switch. In my experience, it will make you much better at many related roles in a SW companies, such as project manager, product manager or business analyst, since you'll know what it takes to produce the SW (what's hard, what's easy etc).
I'm trying it myself and love it. You can get real far in 5 whys. Speaking or writing it in a stream-of-consciousness fashion (first thing that comes to your mind) is quite insightful.
I used to work at a developer job where it was taboo to leave before 5:30 (even if you came in at 8:30). Management often scheduled meetings (that lasted at least an hour, sometimes more) at 5:30 on a Friday. If you wanted a personal life there, you had to fight for it. And I did - I left the job :)
Haha. As a white guy, I perfectly understand how black guys think. For years I tried to become more black, only to discover at a certain point that it's a dysfunctional path that leads to a superficial, seemingly fulfilling but unfocused and non-goal-directed lives.
My real point is that anyone who believes they KNOW how anyone else thinks is wrong. It's a very egotistical thought to have that you know so well what another person thinks or feels.
What makes you so sure there is really a binary divide between introverts and extroverts? Even if it shows up on tests, whose to say that's not a learned behavior?
I'm not sure what you mean by binary divide, but the reason why some is introverted versus extroverted fascinate me. It's a pretty basic question - learned behavior versus instinctual/genetic behavior. Maybe it's somewhere in the middle?
Here's what I think: as a young kid, you get exposed to things that shape your attitude. If your early experiences are negative in social settings, perhaps you grow up to be introverted. But what happened first - your negative experiences, or an attitude that pre-disposed you towards negative social experiences? Can little little kids have attitudes like that? Hard to day - how do we really know?
I don't care what physical science has to say on it regarding brain maturity, neuro-pathways, etc - unless we can communicate with infants, we don't know if they have pre-disposed attitudes or thoughts.
The project proposals are often incomplete, so my strategy is to make a bid, and in the comments ask intelligent questions about the project and design to show I'm serious and experienced. So far no takers on that.
It could be that the project posters aren't serious, or that they're not impressed by my credentials/portfolio, or maybe my higher price.
Does anyone in the HN community regularly bid on freelance projects and get them?
That sounds like a good strategy. I'm not sure which site you're looking at, but elance and several other sites offer tests that you can take to prove your skills. I'd say a day or two spent on those is time well spent, and generally inspires confidence in the buyers.
There are a number of other free or inexpensive things you can do to make yourself look better: use a sharp looking picture of yourself, have a halfways decent website (a one page site is OK - leaps and bounds better than nothing), email @yourdomain.com, toll free numbers are fairly inexpensive, sign up for a BBB membership, etc.
Also, I can't stress enough that you need to have good clear writing that touts whatever skills you have. (On your profile and your personal site.) Don't lie, but do brag a little. If you're not the best at copy-writing, have a friend look over it.
Also, make sure to mention which city you're in / near, as many buyers prefer to work with someone local.
It's OK to specify on your personal site that you only accept work through [XYZ freelance site].
A blog on your site is a bit more work, but can pay off in the long run. You won't get a lot of business directly through the blog, but it will help boost your google rankings which _will_ bring in business. Keep it strictly limited to informative articles on topics you're interested in working on, and try to post regularly - at least once a week to get started.
I often go one step further, and highlight a very broad range in a bid, stating that my proposal is hourly at rate x. Then explain the reasons for needing an hourly assessment: lacking functional specification, requirements, etc. - making it impossible for me to determine an accurate project timeline.
I include a few points that can help them clear up ambiguity in their project requirements, and generally offer an hour of project review as a complimentary service.
On this call (or meeting if they are close), you can quickly determine if they are just trying to get a free hour, or if they are genuinely interested in a more experienced consultant who can really help them with their project.
My experience is about 25% of posters will respond to such a bid/proposal. Of those 25%, about 33% are actually looking for assistance and open to paying for experience.
Notes: I moonlight, and usually bid on projects for which I estimate 40-120 hrs of work, and they are generally in the realm of system administration, database optimization, and php (often on shared hosting). Not the greatest client group with which to work, but you encounter some interesting challenges.
Somewhat, but easier to use than Access. I was thinking that after learning the tool, the end-user should be able to create a basic CRUD application with one or more workflows/screens in a few hours, tops.
Do you have any information about your framework? I'm interested to know more.
I was thinking about basic CRUD applications to start. I think it would be valuable for a business to be able to build a small, basic CRUD application to manage certain processes like QA, or any other basic data-keeping that's needed - in situations where ready-made products just don't fit the bill.
Microsoft Access is probably the best fit for you.
However, beware the danger of ending up with your business fundamentally built on Access. Many products make it easy to program, there is no product that makes programming easy. Just underneath the candy shell, the horrifying Turing chaos waits for you the same as any "real" programming environment, and many is the person who has inadvertently released an Elder God from his tasty confectionery prison to consume their business whole.
I'm being a bit flowery, but I am serious. It's happened many times and I've seen it myself once. Use the tool responsibly; the poky bits haven't been taken out, just moved around a bit.
Technically you can build basic CRUD stuff using Xcode and Interface Builder on Mac OS X:
1. Design your GUI using Interface Builder
2. Design your Core Data model in Xcode.
3. Connect the two using Bindings in Interface Builder.
It will be very very basic, but you can get something built without writing a single line of code. Ideally find some sort of tutorial that steps you through how to do every step, especially configuring and connecting Bindings. You won't truly understand everything, and the only way to do so will be to take the next step and learn C/Objective-C and the Cocoa API.
I'm afraid there are no shortcuts in this business. Programmers/developers are hugely undervalued because people without similar skills have no idea just how difficult it is to build systems.
You should hire someone smart to do this work for you, instead of trying to do it by yourself. Given that your requirements are vague, I would recommend you pay someone a few hundred quid/dollars to talk to you for a day and figure out what technology you're going to need to use. Then you will be in a good position to hire.
If you try and do this by yourself there is a very high chance you will do it wrong. Worst case scenario is that you don't even know it's wrong and it just keeps giving you the wrong data forever.
I worked with an insurance client once who had been overpaying bonuses for years without knowing. You don't want to be that person - hire a programmer. They are cheap, all things considered!
You may want to check out http://wufoo.com for some data collection tasks.
Also, I recommend trying out a hosted wiki and Google Docs. Having a shared Google Docs spreadsheet will probably be more functional than anything you can build without actually programming.
Business-oriented databases generally have this kind of feature. I believe both MS Access and FileMaker have drag-and-drop-style form builders allowing a non-programmer to create a purpose-built user interface to query and update the database.
Yeah Access was the closest think I could think of. But for what I'm picturing, that's too complicated - I don't want the end-user to see or think about the database at all. The end-user should basically drop and drag things, then click a button that says "create application" and it spits out your app.
The name for the activity you describe is programming. Just because you've not typing lines of code doesn't mean you're not programming.
Meanwhile, you need to think about why people like spreadsheets. Yes, they show you all your data on a big stupid sheet and force you to look at it, but that's a feature, not a bug. People don't collect data because pressing buttons is fun. They want to see their data again. Indeed, not being able to relocate their hard-won data is their worst nightmare, so it is reassuring to see it right there and know that you can find it. It's easy to find data in a spreadsheet: Just scroll around until you see it. It's got to be right there on the page: It's a spreadsheet. Even a nonprogrammer can navigate a simple spreadsheet.
It's even easy to change the data. You see a number you don't like, you type over it.
If you want something with better organization or navigation than a simple spreadsheet, you'll need, at the very least: Forms to type the data in, and reports to get the data out. But presumably your forms will need carefully-chosen field types, and validation against app-specific criteria, and maybe even record-to-record relations, or why wouldn't you just use a spreadsheet? And the reports will have to be fancier than just a big table, or why wouldn't you just use a spreadsheet? And when you design these forms and records and relations and reports... you'll be programming.
The reason I would not choose a spreadsheet for this idea is for a cleaner layout. I think a basic form with boxes and labels, where the other data is hidden, would be more user-friendly. A spreadsheet has data all over, and that can be distracting to see and navigate around - for me, anyway. That's my preference.
Lots of spreadsheets are eye-bleedingly bad. It doesn't have to be that way. Some principles I use when trying to improve hideous spreadsheets:
1) The main body of the data should fit on one page. In many cases, it can be made to fit, you just need to reorganize some of it and tweak sizes of boxes, use some reasonable abbreviations, etc.
2) Try to keep it to 7 colors (though this rule can be bent a smidgeon by going one shade darker for emphasis without really introducing a totally new color).
3) "Whiting out" (though beige, gray or taupe can be better choices than white) the background boxes can go a long way towards making a spreadsheet less torturous to look at.
4) Going one font size up and adding bolding can be plenty of emphasis. You really don't need anything of size 72 lettering just because it's a title or some such.
(I'm sure you don't personally care. And I'm not trying to change your mind. Maybe I just needed to say it for myself.)
I was fascinated by the out-of-box Wordpress installation. The author didn't even get rid of the "hello world" post or the tagline that says "just another wordpress blog". That's what made this article so eerie - it's a first blog post on 0% customized Wordpress blog.