Why I Do What I Do

I have to thank Cory House for mentioning this article about Why Do You Do What You Do Because You Better Know.  With some changes happening, this is something I have personally had to face.  I am wrapping up things at The Software Guild at the end of this month, as I have decided it’s time for me to pursue other career directions.  Talking with some people, the “why do you do what you do” and the “what do you do” questions have come up.  It’s been interesting chatting with them, though, as I find my friends and contacts in the field see other directions for me, which don’t align with my vision.  So I figured I’d put this out there for others to see… what do I do?  And why do I do what I do?

What Do I Do?

There are many things that I enjoy:

  • Organizing conferences and other tech events
  • Speaking at conferences
  • Teaching in the classroom
  • Mentoring – in-person, over coffee/tea, via email, online
  • Creating technical programs for others – be it lessons, modules, after-school programs, or larger programs
  • Making tech less scary, more approachable to others
  • Social media – blogging, Tweeting, engaging with others online

Some people may see my steps in the leadership, teaching, and mentoring realm as going soft.  However, I also have technical interests, including:

  • Data engineering – especially exploring various platforms and tools:
    • D3.js
    • R
    • Python
    • SQL Server
  • Web development – especially looking at the various CSS platforms and JavaScript libraries out there
  • API development – reading up on strategies
  • DevOps!!!
    • finally, something that allows me to put my dev skills and IT skills to work TOGETHER and makes sense
  • User experience development

Why Do I Do What I Do?

Long story, short… it’s fun!  I have always enjoyed playing with technology.  When I learn a new tech, you will hear the word play used, as that’s how I see exploring applications of technology and concepts.  Whether I’m building a sample app to prove a concept can be done or really have a legitimate use for these tools, I take fun approaches to technology, keeping my curiosity and interest up.

When I take on contracts and work with others, I choose to partner with companies that keep me on my toes, challenge me in good ways, and help bring out the best in themselves and others.  I find companies and people that align with my beliefs, morals, ethics, and general career direction.  I want to make sure that I make a positive impact to the world.

Over time, I have realized that not all people can teach others.  There are certain levels of communication and patience needed, and somehow I have those.  I enjoy building materials and teaching them because of the impact – watching others become more informed, seeing those “ah-ha” moments.  When I know that I can teach others something complex and have them realize it isn’t that complicated and really is approachable, that makes me have hope in the world… hope for humanity, hope for future generations… or at least for today.

I also appreciate the flexibility that I have in this career, especially at this point in my career, over 15 years in tech.  Being able to make my own schedule, being able to volunteer at my kids’ school, being able to go out to lunch with my husband… being able to put in time working when my kids are asleep (or choosing to spend some of that time with my husband)… having that kind of flexibility is invaluable.  So part of what I do is indeed for the flexibility.

So What’s in Store for 2018?

I have some folks reaching out to me to help build programs for them.   Also, restructuring my LLC for Space Apps last year means I have contracting companies trying to get me into federal contracts.  If you see something in my “What Do I Do?” that may benefit you and if you see that we may align in the “Why Do I Do What I Do?” part, reach out to me here or on Twitter, and we can take it to email as well.  I look forward to partnering with others in 2018, especially those who can put my talents to use and align with my goals and beliefs.

Overwhelming Past Few Months…

Over the past few months, I:

  • moved my kids to a new daycare, full-time
  • took over a remote Software Guild cohort mid-stream
  • went house hunting much earlier than anticipated
  • helped the company my husband works for in moving to a new location
  • purchased another house
  • took a full-time instructor position with the Software Guild
  • started teaching my first Java cohort
  • moved to a new house
  • spoke at a user group in July

And now we’re in the process of listing our old house.  So to say I’ve been busy is an understatement for sure.  As I was going through this process, I kept mentioning to my husband that the day would come probably in August when it would all hit me and I would fall apart.  I knew it was coming rapidly when I woke up on Tuesday morning and firmly decided that I was taking Wednesday and Thursday as days to disconnect.  I mentioned to my boss that I was disconnecting, and he’s completely supportive.  While I could tell my co-workers were concerned, they too are supportive.  They all gave me the permission to disconnect, encouraging me to take the time for me.

Disconnecting with Distractions

Yesterday was tough – as much as I wanted to check on my friends on Slack, Twitter and Facebook… as much as I wanted to read my email…  I knew that I needed to disconnect.  I don’t rest well, as many can tell you.  Thankfully, I found distractions in unpacking boxes, catching lunch with my husband, and then taking on an idea for a small web project.  I also found a lot of distraction in Terraria – lots of fun with that.

terraria-20160901

Reconnecting with Words

Today, I decided that I couldn’t be completely disconnected and that I needed to get past distractions and face all of the overwhelming feelings that have hit me.  This morning was more focused on a personal meeting, but this afternoon is all about reflecting on the feelings and putting them into words.

I’m thankful that I moved – the commute from the Cleveland area down to Akron was really cutting into family time, which was taking its toll on me.  Becoming an instructor has been quite rewarding – it’s been something we’ve all wanted, and the timing just happened to be right finally.  The part that I really underestimated was the transition back to work full-time.  Thankfully, I was going to work full-time with co-workers I had already been working with for awhile in an environment that I was already familiar with.   However, I hadn’t realized how bonds would change from me working part-time to being there full-time and from developer mentor (teaching assistant) to instructor.  Parsing all of this information is definitely overwhelming.

Conclusion

If I seem a bit shattered, overwhelmed, and disconnected, it’s because I finally hit the “oh my goodness, what did I just go through?!?” realization and am slowly working out of that haze.  Thank you to those who have reached out to me in concern – I am getting past this and am looking forward to getting out of this chaos and back into the community.

Adventures Ahead!

Yesterday was a milestone day for me – I ended yet another cohort at The Software Guild.  This cohort, though, is more of a milestone for me because it was my first full 12-week coding bootcamp cohort as an instructor.  That’s right – I am back to work full-time, teaching at The Software Guild in their Akron, OH location.  I am proud of those who have graduated, and I look forward to their adventures ahead.

My next group starts in mid-September, and while I have a lot of work obligations to get done, I also will have a little more time to explore my own interests.  So what’s on my plate?  What are the adventures ahead?

Looking at .NET Core on Linux

I’ve been a fan of Microsoft’s technologies on non-Microsoft platforms for a long time now.  After all, I did speak about running IronPython on Linux back in 2009 at PyCon in Chicago.  Hearing so much about .NET Core from friends in the community, I am excited to see what’s going on with this cross-platform Microsoft stack.  Part of this will be playing with this on my own, and part of this exploration will be working with a friend on an application.  While I haven’t paired on an app for awhile, I’m both nervous and excited about this opportunity!

A Chance at my Geek Card – Dungeons & Dragons

Truth be told, I have never played Dungeons & Dragons.  Never, ever.  I watched people play briefly, and I didn’t think it’d be for me.  Mind you, I come from an RPG background – my addictions with Dragon Warrior, Chrono Trigger, Diablo II, Terraria… my many adventures in MMORPGs – Asheron’s Call, A Tale in the Desert, Horizons, EVE Online, World of Warcraft… so yeah, let’s forget that some of those games have D&D qualities and possibly rules and other influences in them.  D&D is not for me… or so I thought.  But some of my friends have talked me into giving it a try, so we’ll see how this goes.  I’m a little unnerved having to be the healer – I am used to being a hunter or warlock with a pet as a tank.  I’m used to all sorts of stories of mischief and mayhem – from getting into things I shouldn’t to causing all sorts of tales to unfold.  I can’t see the healer getting into mischief and mayhem, but we’ll see.  While I’ve fought the idea of playing D&D for a long time, I’ve now realized it’s time to quit fighting myself.  (That and these guys won’t let me back down now. 🙂 )

Catching up on Reading

Something I’ve been wanting to do for awhile is catch up on my reading. These are the books currently in my queue:



The first two books are nods to my interest in learning and education in general.  The more I read, the more I am curious about how to better teach lessons – whether it’s life lessons for my own children, my apprentices, my friends, or even myself.

The third book, though, is something that I swore I would never understand.  In college, I had to take courses that explained data structures and algorithms.  While they did a good job on theory, they didn’t really explain the practical part.  However, one of our later lectures in our cohort is on data structures and algorithms, and I had Victor cover that for my group as well, as I knew that data structures and algorithms were things he got excited about.  I didn’t realize just HOW excited he got until I saw his prep work and making notes on his lessons and seeing his examples.  His excitement is quite contagious, and when he showed me this book, I realized that there is hope for me to better explain algorithms to my apprentices without feeling like the theory from college killed my will to understand programming languages.

In addition to the above, I also need to continue unpacking and settling in our new house and putting together my home office.

Conclusion

Overall, I have a lot of things to get done over the next few weeks.  I definitely am looking forward to the adventures ahead!

Cleveland GiveCamp 2016 in Review

This past weekend, I had the privilege to participate in Cleveland GiveCamp 2016.  We completed 20 projects – mostly web sites on WordPress, Weebly, Wix, SquareSpace, Strikingly, Drupal… to name a few platforms.  There were a couple projects that weren’t websites – including one where they were helping the non-profit with scraping data.  For me, my heart and mind lived primarily in the arena that has been intriguing me again – security.

Why Security Seems Scary

We always joke nervously (and most secretly fear) about the hackers with the USB sticks and the malware they’re going to get us with.  We worry about the phishing when we realize that the email we clicked on was indeed a scam.  That person sniffing our network traffic, learning where we live because we filled out an unsecured form, and then doing stuff with that information – we fear that.  The bad things… the way media spins it… these things are scary.  The hackers are portrayed as bad.  Security guys are seen as scary… because so many people see the bad.  They tend to forget that as many bad guys are out there, there are good guys who care about those who are vulnerable.  This weekend, I had the privilege to assist some of the good guys who were there to check our work for vulnerabilities and make sure that our non-profits were secure.

My Security Ah-has

This weekend, I found myself challenging my fears a little.  This is what I’ve learned about myself:

  • I appreciated learning from them. My fears are actually my feeling vulnerable and like an impostor because I don’t have mad hacking chops like they do.  I also have a lot of respect for this group in particular – super knowledgeable and truly caring about helping the non-profits.  In reality, while I may still feel vulnerable, I have to realize that a developer/IT skill set and set of eyes can be a helpful thing.
  • I actually had fun writing PowerShell to help the GiveSec team out, so much so that I think I may see what else is out there and how I may be able to contribute.
  • I understand security enough that I was pretty angry when I had to say Security is so much more than just making sure credit card information is secure.  Yes, I had to explain this, and even more infuriating was having someone still walk away, not understanding our concerns and dismissing it as a parade of scare tactics.  *sigh*

So this year at Cleveland GiveCamp, I learned a lot about security teams and the various things they deal with.  I hope that I continue to follow my curiosity based on what I learned over GiveCamp and see if my dev ops mindset blossoms more this year.

True Confessions – Hot Orange Tea

Long ago, back before Google was turned into a verb, I looked up my now-husband’s webpage through Yahoo. I wanted to know more about the guy I had a crush on. And I wondered a lot more about him when I found a recipe for hot orange tea on his site.

I’ve learned that the hot orange tea recipe he had on his site – definitely delicious! I love it on a cold day – I’m drinking it today while it’s in the low 20s – but it’s great to drink cold too!

Enjoy this recipe!

Hot Orange Tea

  • 3 cups water
  • 1 stick cinnamon
  • 15 whole cloves
  • 2 tea bags
  • 2 cups orange juice (if using frozen concentrate, dilute, then measure)
  • 1/2 cup honey
  • 1 teaspoon aromatic bitters

In sauce pan, combine water, cinnamon stick and cloves. Cover bring to a boil and simmer 10 minutes. Remove from heat and add tea bags. Let stand 5 minutes. Remove tea bags and spices.

Add orange juice, honey and bitters. Heat through, stir well and serve. Makes 3 generous servings.

Understanding Rejection in the Job Market

Any time interviews are involved, there’s always a chance of rejection.  Interviews are two-way streets – while the company is interviewing candidates, the candidate should also be interviewing the company.  There are many grounds for why a candidate or a company may be rejected.  Let’s explore some of them.

Personality / Team Chemistry

As a hiring manager, this is one of the factors that I look at in my candidates.  I know my team and their personalities – personally and business-wise.  I know what personalities work well together, and I know which ones will cause turbulence for my team.  As a manager, I need to make sure my team’s chemistry is in balance so that they work together to meet the common end goal of delivering a project that satisfies our client.

Not the Right Time

Sometimes, it isn’t the right time to go for a position.  Especially in the world of consulting, we need to make sure that work is there so that our consultants are working and not getting paid to sit around on the bench.  If the business pipeline isn’t strong enough for another employee, then it’s wise to hold off on hiring employees.

Not the Right Skill Level

Sometimes, it’s easy to team up a junior with a senior to fill a mid-level position temporarily.  But sometimes, your resources are tied up and you really need a mid-level.  This happens.

More often than not, job descriptions are tailored specifically for a range of skills with clear intentions.  This means that, as candidates, you are guessing how much of that job description is solid and how much has wiggle room.  While it doesn’t necessarily hurt to go for a position that may be 6 months – 1 year out, it’s definitely a gamble as to where there may be wiggle room in the job description.

Not the Right Environment

A job interview onsite makes it easy to identify if a company’s culture is the right fit for a candidate.  Face it – a website and words can tell one story, but the company’s culture needs to be experienced in person to be truly understood.  This rejection reason is more of why a candidate may reject a company.  Sometimes, while a job description sounds appealing, the company atmosphere itself is unpleasant and not the right place.

The Better Candidate

With as many openings as there are out there, there are also many job seekers.  Some people are better than others on selling their skills and their employability.  Sometimes, there’s one candidate that’s better qualified.  Sometimes, there’s one that’s a better fit for a team.  It’s up to the hiring manager and the company to make that decision of who is the better candidate for their position.  If you get this rejection, make sure that you’re putting your best foot forward.  You need to make a great impression on all that you meet – from the receptionist to HR to hiring managers to everyone in between.  You never know who is commiserating with whom.  As long as you are putting the best you out there, then there’s nothing else you can really do (unless you know the other candidate and know how to sell yourself positively to stand out better than them).

Where do we go from here?

Try not to take the rejection too personally.  More often than not, the rejection boils down to the point in time.  It typically isn’t a “You can never work here” type of rejection – unless you’ve done something extremely wrong, this is rare.  If you really want to work somewhere and get rejected, try again later, when your skills are sharper or when the right opportunity appears.

 

For my apprentices… Why Twitter

I have to admit… the very first time I saw Twitter (back in 2007), I had to wonder why my friend Nivex sent me a link to it.  I think my thought best summed it up…

This site is stupid. It’s going nowhere. It’s definitely not for me.

Later in 2007, I met my dear friend Jeff Blankenburg, who mentioned Twitter in his presentation at a user group meeting.  I thought…

Wait… isn’t that the site that Nivex sent me? I swear… this is stupid.

Jeff made a compelling case for Twitter, and I’m going to share some of his tips.

Check out the person who told you about it.  Check out their friends and followers.

The person who told you about Twitter probably has found it to be a useful tool.  So hear them out and see what they’re talking about. (Follow me over there – @sadukie!)

I checked out Jeff’s profile to see what he was about as well as who he was talking to.  I then popped back to Nivex’s profile and did the same thing.  As I found interesting conversations and people, I started following more.

#HashtagsCanBeHelpful or #OverusingHashtagsIsAnnoying

Use hashtags to make it easier to seek help or find related Tweets.  So if you’re looking for help with a C# problem,   you could use Twitter’s search feature to find Tweets tagged with the #csharp hashtag.  Same thing goes for the Java crew – you could find some help with the #java hashtag.  But for the love of all that’s good, I better not see any tweets with #SpamSadukieWithSuperAwesomeHashtags. Got it? 🙂

There’s also a #Discover link on Twitter – use this to see trending hashtags.

It’s okay to be quiet. (This is my advice, not Jeff’s.  I’m the introverted one.)

There are some people who are just lurking and getting the feel of Twitter.  They are following people who they trust and possibly more, understanding the ecosphere.  If you don’t feel comfortable talking on Twitter, don’t panic – it’s okay to lurk.

But it’s okay to interrupt too!

If you see a conversation that’s really interesting you, don’t be afraid to engage.  You never know where that will lead.

Don’t take Twitter’s “What’s happening?” literally.

Nobody cares if you’re eating a bagel. Seriously, though, you don’t have to say what you’re doing.  You can ask for suggestions and recommendations and see who responds.  You can just post random thoughts.

Twitter is a multi-functional tool.  Make it work for your needs.

For me, Twitter led me to new relationships, new friendships, and new avenues in my career.  I’ve used it to…

  • Find my apprentices job leads outside of the Cleveland/Akron area
  • Find resources related to a work problem
  • Help others find solutions to their problems
  • Promote my book
  • Promote my speaking engagements
  • Find and promote conferences
  • Find my place in the tech community
  • Find other parents in the tech community

Conclusion

As I write this post, I’m up to 17k+ Tweets, following about 2000 people, and being followed by about 2700 people.  My first impressions were totally off, and I’m glad I gave it another chance.

There are people I talk with on Twitter that I have awesome conversations with… that I don’t know in person.  I’m okay with that.  When I meet them in person, it’s cool because we have already talked, so that awkward first time meeting someone is gone.

There are many friends I’ve met through various events that I keep in touch with on Twitter, and when we reconnect, it’s like that time apart physically wasn’t as distant.

For me, Twitter is a great way of keeping in touch with the community and with life in general.

 

 

More waxing nostalgic… old school HTML (LOL!)

My work with the apprentices this time is triggering a lot of waxing nostalgic.  I’m still uncertain as to why.  However, I am laughing up a storm here at the examples I came up with in my HTML (with frames, tables, Perl CGI Scripts, Macromedia Flash, and Macromedia Director work) and JavaScript/VBScript/Java courses back in college – yes… long ago.  You’ll notice that one of the last updated dates is 2001.

All of these screenshots remind me of why I am not a designer – DodgerBlue and LemonChiffon really look hideous together.  Add to it that I did things I shouldn’t do, but I was bored out of my mind and needed to stretch my engineering creativity as much as I could.  If you click on the smaller images, you’ll be able to see the full image.  Enjoy!


 

cset3100-ohgodframes

 

cset3100-ohgodframes2

Oh god! Check out those frames.  But wait… this train wreck is far from over.

Yes, I was that bored.  No, this is just an image – you can’t view the source of that.

This was an imagemap.  I loved watching these guys when I was growing up, so I couldn’t resist them for my project.

Forms! No CAPTCHA back then… but check out that AWESOME Submit button! *facepalm*

And my final project… apparently I thought a pizza shop was a great way to showcase all of my HTML, JavaScript, and Java knowledge.  Check out that last updated date!

 

Like I tell people even to this day, I am definitely not a designer.  When you leave the design up to me, I can’t guarantee anything visually pleasing.  Thankfully, though, if a designer gives me a layout, I can splice my images and create CSS from an image very easily.  I was given those chops, just not the ability to come up with designs from scratch.

Hope you guys got good laughs from this!

 

 

Microsoft Virtual Academy – from a Developer’s Perspective

Ever find yourself wanting to learn new technology but not sure where to start?  Not familiar with Azure but wondering what it has to offer to developers? Want to know what’s coming up in SQL Server 2014?  Have no fear – the Microsoft Virtual Academy is here!

FREE eBooks

There are many Microsoft eBooks that are available for FREE!  Some of the titles available include:

  • Introducing Microsoft SQL Server 2014
  • Programming Windows Store Apps with HTML, CSS and JavaScript
  • Building Cloud Apps with Microsoft Azure
  • Introducing Microsoft Azure HDInsight
  • Microsoft Azure Essentials: Fundamentals of Azure

These are just some of the titles available.  These eBooks are available in various formats – including PDF, EPUB, and Mobi for Kindle.  Did we mention that they’re FREE? You can find these books at: http://www.microsoftvirtualacademy.com/ebooks

Online Courses

Regardless of whether you’re at home, in the office, in a hotel on the road, in a coffee shop, or anywhere else with Internet access, you can brush up your skills by taking online courses through the Microsoft Virtual Academy.  So many courses to choose from!  Some topics that are covered include:

  • Practical Performance Tips to Make Your HTML/JavaScript Fast
  • MEAN Stack Jump Start
  • Introduction to AngularJS
  • Introduction to Programming with Python
  • Cross-Platform Development with Visual Studio
They even have these Quick Start Challenges that are short explanations (less than an hour) on how to do some things including:
  • HTML5 Portability
  • Touch Support Using openFrameworks
  • Creating Your First Marmalade Game
  • Python and MongoLab

You can find all of these courses over at the Microsoft Virtual Academy.

Live Events

If you happen to be able to get away from work to sharpen your skills, there are also Live Events offered by the Microsoft Virtual Academy. Don’t be fooled by the name – these aren’t in-person events.  The Microsoft Virtual Academy is keeping it virtual, but these online sessions are at a scheduled time, with live presenters.  They also have recorded sessions from past events.  Interesting topics include:

  • Java on Microsoft Azure
  • Creating 2D Games with GameMaker: Advanced Techniques
  • Data on Azure: A Technology Overview
  • Fundamentals of Application Lifecycle Management

You can find these and more at: http://www.microsoftvirtualacademy.com/Live-Training-Events

Conclusion

Microsoft has provided a resource for techies to get up to speed on their various technologies – take advantage of this resource to help stay up on where technology is and where it is going!  Check out the Microsoft Virtual Academy at: http://www.microsoftvirtualacademy.com/

Data Collations

I love being married to an IT guy who focuses on “the other stuff”.  He’s truly awesome when it comes to system admin stuff, network admin stuff, and anything related to the hardware.  When it comes to writing code and some database stuff, though, he relies on me for a little guidance sometimes.

Tonight, he was looking at phpMyAdmin and wondering why he had “100s of options” in there.  When I asked him to elaborate, he mentioned “latin… utf…”.  Ahh… collations…

The Anatomy of a Collation

A collation explains the patterns in a data set.  This includes some behavioral rules.  Some of the key parts to note include:

  • Code Page – controls how to store the non-Unicode data
  • Options – determines how data is treated

Options

  • _CS / _CI : case sensitive / case insensitive – determines whether the letters’ case makes a difference in sorting.
  • _AS/ _AI: accent sensitive / accent insensitive – determines whether the letters’ accenting makes a difference in sorting.  For example in an _AI setup, é would be the same as e.  However, in an _AS setup, that would not be true.
  • _KS / (omitted): Kana-sensitive – determines how Hiragana and Katakana are handled.  This applies to Japanese kana characters. If _KS is not present, it is Kana-insensitive.
  • _WS / (omitted) : width-sensitive – determines full-width and half-width characters sorting.  If _WS is not present, it is width-insensitive.

 

Additional Resources