During my studies of Windows PowerShell, I’ve come across a great number of excellent resources for experienced admins and newbies alike. The following is a compilation of sites, book recommendations, and tools to help out anyone wanting to start working with this ridiculously powerful scripting language. Windows PowerShell comes as an optional feature in modern versions of Windows desktop operating systems such as Vista and Windows 7, and is generally installed by default on Windows Server 2008 and 2008 R2. PowerShell v3 comes as part of the core operating system for Windows 8 and Windows 2012, in the form of features you install from the “turn Windows features on and off” menu. If you’re running an older version of Windows, such as XP or Server 2003, you can download PowerShell here, and get some handy PowerShell Active Directory management tools for Windows Server 2008 and earlier here.
The starred (*) items are strongly recommended for beginners or anyone new to PowerShell.
When getting more advanced with any scripting or programming language, it’s always a good idea to get familiar with regular expressions to help get the most out of your scripts. Currently, Mastering Regular Expressions, 3rd Edition is one of the top-rated books out there on the subject. It doesn’t have code-examples specific to PowerShell, but hopefully future editions will. Here a great site for free tutorials of regular expressions to help you get started: Regular-Expressions.info
I saw this today on Facebook and I thought it was very appropriate for me, and others in the same position, taking certification tests and/or going to college:
I’ve taken programming classes before: a VB6 course back in 2000, an intro to programming with C++ course in 2002, and then I picked up some C# back in 2006, but none of it ever really sunk in because I didn’t spend enough time with any given language to get any good at it. The only “programming languages” I’d been proficient in were XHTML and CSS2. . . well, up until January of this year that is.
In the Spring semester of 2011, I enrolled in CIS 26 at Laney College in Oakland, which was an introductory programming class that used C as the language of choice. It was both a “for beginners” class as well as a course on how to write code in the C language. I really enjoyed it, and now in the Fall semester I’m enrolled in CIS 25: Object-Oriented Programming with C++. So far, it’s been enjoyable. We’ve covered the usual if-else and switch statements; for, while, and do-while loops; functions; pointers and reference variables; classes and polymorphism. . . the usual fare for an OOP class. The teacher assigns no particular book, he simply lectures and sends out notes he wants us to use, then strongly recommends we pick out a book to use ourselves; one we can read and learn from outside of class.
For my money, I chose to go with Stephen Prata’s C++ Primer Plus:
After all, I went to College of Marin, and he used to teach there. . . oh, and the book comes highly recommended, too. It’s a great read, both for beginners and experienced coders. I’m slowly but surely working my way through the last few chapters now, getting my head around classes, among quite a few other things. This’ll be the longest span of time I’ve ever spent doing any kind of coding, for class or otherwise, and I intend to keep it up.
I’m going to take a data structures & algorithms class at Laney at some point in the future, probably next summer. (Yeah, that’s the only time they offer it.) Before then, however, I intend to already have a leg-up and spend some time working my way through a book or two, then maybe find some coding projects to tackle. Which book(s) I intend to read, I haven’t the foggiest idea yet, but I’m hoping to get some suggestions from my classmates and former co-workers on the subject. I don’t intend to let what I’ve learned drop away this time, and I’ll be damned if I go into that next class without some kind of preparation so I can get the most out of it.
** Update: finally found this video on YouTube. **
Reading through it, I began to realize that some of the assumptions I’d made about education in my part of the world is pretty much true. For the most part, people find science and mathematics harder to understand and study than they do subjects like history, English, and others that fall under the umbrella of liberal arts. The question I had to ask myself is why. Why do so many people have such a hard time with one area of focus, but not others? Is it because the college coursework for English majors is less complicated and demanding than what engineering and science majors have to deal with? After spending long hours in study-sessions with Hanif Houston, a recent graduate of UC Berkeley’s English undergradute department, I’d say this isn’t true. His workload consisted of sometimes reading an entire novel per week, analyzing it, and writing several lengthy papers at once. My workload consisted of dozens of math problems, physics questions, and code-writing projects each week; all of these together often times didn’t amount to the amount of time and effort Hanif spent dissecting Shakespeare or building arguments for why Philip Roth’s sarcasm should be bottled and sold as a remedy-cure for common stupidity.
Given, I’m still a lower-division computer science and electrical engineering major, while the comparison is to upper-division English studies. Nonetheless, the CNN article describes people dropping out of their first or second years as science majors to pursue liberal arts degrees instead, taking a path of less resistance. So why is it really, then, that people decide that liberal arts are a path of less resistance to a degree? The obvious answer I can give here is that math and science classes in the public K-12 school system aren’t nearly adequate enough to prepare students for college-level work, but that’s not really the only problem. After all, courses in history, English, art, music, and the like are just as lacking in high school and below. So, perhaps there’s a bigger issue to look at. . . maybe it goes back further and deeper than our educational system.
Growing up, I never quite realized how often I heard the same set of mantras: “I don’t care about the science, as long as it works,” “I’m no good at math,” “when am I ever going to use this stuff?”, and of course, “if you spend all your time studying [math, sciences, or other 'nerdy' subjects], you’ll have no life and never get laid.”
The issue here is that all these things are so damned passive, we don’t realize we think this way. When I used to think of professional writers, for example, I used to imagine the people I saw in movies, like Jack Nicholson in As Good as It Gets, playing Melvin Udall, living in an expensive New York apartment and writing books at his leisure. Or I’d picture Michael Douglas in Wonder Boys fighting writer’s block, Sean Connery in Finding Forrester as a reclusive shut-in, coming out of seclusion to help a young writer earn his professor’s respect. All of these guys had two things in common: they didn’t seem to actually work all that hard for their money, and there’s never a time we see them struggling to earn that money. Easy living, right? Just write books, cash your checks, and have all the time in the world to deal with life’s other little problems. How hard could that be?
Scientists, on the other hand, get a different image in pop-culture. Up until recently, physicists, chemists, mathematicians, biologists, and all flavors of engineers have been portrayed either as quirky side-characters, or as eccentric, awkward head-cases that are either used as foils for more charismatic characters, or as “ugly ducklings” that need to be brought out of their shells by friends or a love interest. (See Q from the James Bond movies, the protagonist of the Nutty Professor movies, Doctor Emmet Brown from the Back to the Future series, etc.) The cases where a scientist is considered a sex symbol, a true main character, are the cases where they are more occupied with flashy action sequences than they are with their area of expertise, (see Doctor Jones from Indiana Jones, Doctor Gordon Freeman in the Half-Life video game series, and Doctor Ian Malcom in Jurassic Park.) This is also true for those “lonely nuclear/astro physicists” played by attractive blondes in James Bond movies. The issue here is, simply put, real science isn’t sexy. Most of those nerdy engineers and scientists used as side-kicks and comic relief in movies aren’t what the majority of people want to be.
I say most, however, because there is an exception to the nerdy scientist image. When the movie, video game, book, or television show in question is attempting to make the science, itself, sexy is when we see the geeky scientists become the charismatic protagonist. One good example of this is Dana Scully from The X-Files, as well as Peter Venkman from Ghostbusters and Hawkeye Pierce from M*A*S*H. Often times, with the notable exception of the latter, the main characters are made to look a lot more sexy by virtue of the fact that the science is either questionably feasable, or dumbed-down in order to make for more exciting action or drama. These are people we want to be, for sure, but for the same reason we want to be those writers from a few paragraphs back: their lives consist of other concerns, outside their jobs, that make their existence a lot more fun than our own. Scully performs autopsies on camera, Dr. Venkman actually does perform experiments in psychology, and Hawkeye spends a lot of time in surgery. These scenes, however, aren’t the main focus of the story, they’re merely vehicles for the characters to further conflict between other characters, set mood, or used as a backdrop for later sequences to play out. (Hawkeye also spends a lot of time drinking in his tent and arguing with higher-ranking army officers about the patients he’s worked on in the OR.)
So what’s the payoff for having read this far? My point is that we either paint math and sciences as too dull, too boring, or too difficult. It’s okay to rationalize your C grade in algebra because no one will fault you for saying it’s not your strong point or that you’ll never get any use out of the quadratic formula in your adult life. On the other side of the coin, we sometimes make technical fields seem easy and fun like they are for Indy and Doc Brown, and people are blown away by how much work they have to do in college to achieve a fraction of the progress these characters make and are disillusioned. This isn’t all too different from martial arts movies, signing up for karate classes, then dropping out after a few weeks because you got your ass kicked in a fight after school. The real world isn’t the movies, and usually the jobs we have to do aren’t exciting or sexy at all, so we pick the perceived easier path in order to avoid that work. Between that slap or reality and the stigma of working in “nerdy” fields of study, in my opinon, it’s no wonder people either switch from, or outright avoid, sciences and engineering in school.
How do we rectify this kind of attitude? I suppose we can try to instill in our kids that hard work is a part of life, and if you pursue your intersts you’ll probably end up having a lot of fun as well as studying your butt off. Regardless of the field, reality needs to be observed and people need to start getting genuinely excited and interested in their pursuits. Being an English major isn’t easy, and physics isn’t as hard as you’ve been lead to believe. And honestly, at the end of the day, both writers and scientists are equally geeky in their own right; so are FBI agents, firefighters, and medical doctors.
Because it not only means that I get to burn through physics, but I also get to fry my brain with stuff like this when I decide what other classes to take at Berkeley:
So, say goodbye now and hope that the only color my hair turns is white. What’s worse, my friends and family fear for their lives at the prospect of a particular double-major I’m thinking about. (The second one, that’s the choice that makes my loved ones wake up screaming in the night.)