Geekamama


2 Comments

Becoming (Silver)enlightened, Part 1

We’re in a sort of in-between time at work, so I’ve decided to learn Silverlight programming.  I’ve got programming experience but I wouldn’t call myself an experienced developer by any stretch.  It’s kind of like being just fluent enough in a foreign language that I can read or listen to it and get the gist of the conversation, but if I had to jump in to add my own thoughts, I’d be stumbling a lot and needing help with some of the translations.  I understand programming concepts backwards and forwards, I just need a little help at times converting them from the theoretical to the practical.

I have a project in mind that I’ve been toying with for a while, and decided to take a shot at programming it myself, rather than relying on someone else to implement my ideas.  While I do have some friends who could probably teach me, I’m going to see how far I get trying to learn it on my own.  I thought it might be fun to document the process as I go.

My first step was to hit the Internet.  I launched Bing and typed “learn silverlight” into the window.  Voila, a bunch of handy resources, the first of which was Learn : The Official Microsoft Silverlight Site.  Right in the middle of the screen was a handy box that said “New to Silverlight?  Visit the Get Started section to get up and running quickly.” Hey-o, and away we go!  I had already installed Visual Studio 2010, but needed to install the Silverlight 4 Tools for Visual Studio.  For some reason this didn’t go smoothly the first couple times.  The first time I had to cancel the installation altogether.  The second time, the installation completed, but reported errors.  Third time was the charm and I was good to go.  I started up the video.  Got partway in, and realized I’d learn this best if I worked on it along with the video.

Tangent: I’ve heard there are different types of learners: visual learners who need to see things written out to understand them best, auditory learners who grasp concepts more quickly when they hear them explained, tactile learners who need that hands-on experience to really take it in, and logical learners for whom the “why we do it this way” is equally as vital as the “how to do it” itself.  (In parallel with that, there are different types of teachers, and it’s not uncommon for a person’s learning style and teaching style to be different.  But I’ll save that discussion for another post.)  I feel that I’m primarily a hands-on learner, but at the same time I like to have someone explaining things so that I know I’m hands-on-ing correctly.  So doing this on my own without a guiding authority is something a little outside my comfort zone.

However, this video was playing right to my preferred learning styles because it was telling me, showing me, and letting me get some hands-on time by working right alongside it.  Oh, wait.  Did I say “alongside?”  Actually no; I was trying to watch the video and walk through the tutorials on the same computer.  Flipping back and forth between them wasn’t working out for me.  I tried installing Visual Studio 2010 on my laptop, thinking that I’d want it there anyway so that I could take my work home, but the installer doesn’t seem to be working right.  (In fact, it’s trying again even as I type this, but the progress bar isn’t showing even a single pixel of advancement.)  As a final resort I copied the video to the laptop so that I could run it from there while doing the tutorial on my desktop computer.

Once I got everything set up for smooth productivity, I re-started the video and got to coding.  When you create a new Silverlight application, it automatically give you a working mockup, so you can run it like a real web page right out of the box.  I ran into a few confusing steps where what was shown in the tutorial didn’t quite match what I was actually seeing in Visual Studio, but that’s likely because something had changed since the tutorial was published — not an uncommon occurrence in the software world.  I was able to follow along and create my little Hello World web page and application, even if I did have to stop and rewind a couple times to make sure I’d typed things correctly.  Oh, and I kept trying to scroll around inside the video itself.  Kind of like trying to interact with a TV show from the couch side of the screen.  Yeah, good one, me.

The tutorial doesn’t just show how to lay out buttons and text fields and get them to interact with each other.  It even includes a demo for connecting your web application to a database on a web server.  I didn’t try coding that part because I’d neglected to download the sample database, but it looked straightforward enough that I think I’ll be able to finish it out later (with help from the video again, I’m sure.)  For the moment, I feel like I now have the skills to lay out the user interface for the project I’ve got in mind and possibly get started on hooking up the various elements to each other.


2 Comments

Infancy 1, Engineers 0

I’m an engineer.  My husband is an engineer.   We have business cards and job titles that confirm this, so it must be true.

As such, we approach problem solving like many other engineers do: Define the problem in clear terms.   Set expectations of what ought to be happening instead.   Drill down and observe closely.  Pay attention to your gut instinct, but find solid evidence to back it up.   Research possible solutions and look at what others have done in similar situations.  And especially, make sure you have a reliable, repeatable way to reproduce the problem, so that when you come up with a solution you can be sure it’s working as expected.

It didn’t take very long to discover that this approach goes right out the window when it comes to solving parenting problems.  Especially parenting problems that pertain to brand-new infants fresh from the cabbage patch.

Our son, like all babies, fussed and cried.  We’d try something.  It wouldn’t work.  We’d try something else.  Aha!  Problem solved.  But before long he’d be fussy again.   No worries, we know how to solve that one now, right?  Ha!  Frequently, what had worked the night before no longer worked tonight.  We’d run through the standard checklist of Hungry? Tired? Needs changing? Needs cuddling? and more often than we liked, we’d run right off the end of the list into the abyss of What The Heck Do We Do NOW?

Oh, I did plenty of research.  I had a few oft-recommended parenting books that I flipped through when I had moments of free time.  I was used to solving problems by paging through documentation online and in hard-copy form, so I reverted to what had worked for me in the past.  There’s just one small problem to this approach: unlike software programs, babies aren’t consistent.  They don’t roll out from a factory all identically stamped with a verified set of bits.  What works to solve one family’s problem doesn’t necessarily apply to the next-door neighbor; heck, what works for one sibling might just be anathema to the next!  Our little nubbins didn’t care what those books said was supposed to please babies.  After all, he wasn’t some hypothetical book baby; he was HIMSELF.

When our son was 4 weeks old, I got a NursingKnowHow email with the subject line “Why does your baby cry?”  I clicked that one so fast I could have broken my mouse button.  The first line of the email simply said, “Your baby cries because he’s a baby.”  It was a vague non-answer designed to lead into the rest of the article, but something in that sentence resonated with us.  Maybe it was the confirmation that it wasn’t user error on the part of us parents; maybe the reassurance that what seemed like inexplicable behavior was, in fact, perfectly within design parameters.  It didn’t matter, because at last we had a reason (of sorts) behind the randomness.  For two sleep-deprived people stumbling into the wilds of parenting after spending decades in safe, predictable engineering environments, a reason was as good as a multi-volume reference set.

In the months that followed, an amazing thing happened.  We learned to trust ourselves and our parenting instincts.  We discovered that there are lots of books out there written by child-rearing experts, but there are only two people who are experts on how to raise this particular Kiddo.  And while I still do research for particularly perplexing problems, I’ve found that a better approach is to read the books once or twice, then set them aside and cherry-pick the advice that makes most sense for our family and our situation.  It makes for an interesting mishmash at times, but so far it seems to be working out for all three of us.  Soft science for the win!

Back in those early months, we coped by finding a new catch phrase: “You can’t debug a baby.”  It didn’t solve the problem of why our son was crying, but it did remind us that this child was not just another software engineering problem, and that the processes we were accustomed to using weren’t necessarily the best fit for this situation.  We’ve held onto that phrase as Kiddo has grown into a toddler and started down the tedious path of temper tantrums and nonsensical (to us) whims.  Sometimes we’ll ask, “What are you, ONE?” as a way of reminding ourselves that what he’s doing is perfectly age-appropriate.  It’s our job as parents to figure out how to handle it, even if that means scrapping the previous tried-and-true fix and starting over – something not often recommended in our day jobs.


Leave a comment

Greetings

I’m not entirely sure why I’m starting this blog.  Do I have something to say that I think the world would be interested in?  Do I have some specialized niche knowledge that others are looking for?  Do I have nifty hobbies that photograph well?  Not really, nope.

I’m just a mom, and a software geek, and a wife, and a woman.  I have the same daily struggles that I’m sure many others do: what are we going to make for dinner tonight?  Will there be time to finish this project before I have to leave for daycare pickup?  Does my new boss have expectations that I’m not sure I can meet?

Apparently I’m also an Asker of Many Questions.

I grew up in Montana and studied journalism, eventually completing my degree in 1995.  I like to put words together in just the right way.  After graduating, I took a good look around at the opportunities available and realized that hey, this is a pretty competitive field, and I’m not sure I really want to be a reporter after all.  What I really wanted to be was an editor.  Proper grammar and spelling make me happy.  Words have meanings, y’know!  Funny thing, there aren’t a lot of entry-level postions for editors. 

However, this was in the mid-1990s, and there was something huge on the horizon: the World Wide Web.  The summer after I graduated was when URLs first started showing up in television commercials.  I had the luxury of a little time to play with, and decided what the heck, I’ll take some nondegree graduate courses in computer science.  Next thing I know, the department head was strongly encouraging me to turn that into an actual graduate degree.  Me?  The girl with the journalism degree?  Yeah, me. 

I didn’t set out to become a software tester.  I sort of fell into it when I didn’t quite fit the other disciplines for which I was interviewed.  In 1999 when I entered the real world, I was convinced that I’d been miscategorized and after a year or two I’d steer myself into where I through I really belonged.  Except something happened.  I discovered that a lot of the editing skills I’d polished in J-School could also be applied to software.  In a way, I’m an editor of not just text, but of how you, the customer, interact with an application.  The same gut feeling that told me that an article was clunky and difficult to understand can also be used to tell me that a program is uninviting and non-intuitive to work with.  The nit-pickiness that helped me place commas correctly also helps me line up buttons and pixels according to standards.

Meanwhile, my life outside work was going through some changes.  I divorced one husband and eventually married another.  As often happens, that marriage of two people morphed into a family of three people.  Now I have a toddler whose smile can light up my morning as well as a partner whose hugs can round out my evenings.

I also have a messy house.  I’m told this happens with toddlers.  And husbands.

I want to talk about the challenges of dealing with managing a family and a full-time job.  I like to write, and while I have other outlets for sharing with close friends, there’s something in me craving a more public audience.  So, here I am and here I go.  Still not entirely sure what I’m about, but open to the challenge of figuring that out as we go.