The lows are low, but the highs are home

Month
Filter by post type
All posts

Text
Photo
Quote
Link
Chat
Audio
Video
Ask

September 2012

Co-op employer panel notes

[Earlier this week, I went to a panel hosted by my university’s co-op program. A handful of employers agreed to come talk to students about how they hire at their company. Interestingly, it was fairly skewed towards programming/engineering employers, but then again, about 75% of the audience was in the engineering department. At any rate, I took notes on paper for my own benefit, but I figured I may as well post them and free myself from a few pieces of paper. Assume any errors in, say, last names or job titles is my fault.]

Participants

Shopify - Doug, recruiter

  • Interns at Shopify are put on par with all the other developers

Smart Technologies - Jennifer

  • Located in Kanata
  • Make interactive whiteboards, historically for educators
  • Actively hiring sales reps, but also software engineers

Adobe - Tia Murphy

  • Moving towards Software as a Service
  • New job postings every quarter, which last for three months

Immigration Services (Federal government) - Jacquelin Cote

  • Handles employer outreach and research on the part of immigrants
  • Event coordination and management of programs with non-government employers

Solar Logics - Calvin Adams

  • Hires a lot of engineering students

Teldeo - Casey Li

  • App developers for two-way radios, used in places where cell signal is unreliable
  • Use C, Java, and Ruby on Rails for development
  • One of several incubator startups in a group

Q&A

What are dealbreakers for you on a resume?

  • 5 page resumes for someone in university - stick to 1-2 pages
  • You should be specific about any experience you have that’s relevant to the job you’re applying for
  • Spelling and grammar mistakes are pretty much disqualifiers
  • You should try to find out “to whom it may concern” actually refers to, and address the person who will be reading the letter
  • Follow the directions in the job posting, don’t send in the wrong document format
  • Have someone review your resume
  • List all the skills the job posting asks for directly on your resume - don’t make the employer infer your skills from job descriptions
  • Think about what your “unrelated” jobs may have taught you
  • Use LinkedIn, or something like that, to look up the people who will be hiring you - then tailor your resume to them
  • Prove you can do what they’re hiring for, or that you have the passion to learn how
  • Try to give more information than just a list of bullet points
  • Don’t assume your employer is familiar with your school program - tell them what relevant courses you took
  • Consider the culture of the company you’re applying for, and what level of formality they expect

Should you stick exactly to a one page or two page resume, or can you have a page and a half? Answer: A page and a half is fine

Submitting the classes you’ve taken and your grades (aka your transcript) with your resume is helpful

  • However, they may not go looking for details on the classes you took
  • Providing class descriptions (at least, for every class) is probably overkill

Listing bursaries and other testaments to your skill is worthwhile, as it helps make you stand out

  • But beware the generic bursaries you automatically get for, say, having a certain GPA - these aren’t exactly prestigious, and their names mean nothing

Being bilingual isn’t needed in most co-op positions, but it is necessary for government jobs in the long run

  • For languages other than French, the government has professional translators
  • In addition, if two people have the same skills but one is bilingual, the person who is bilingual will likely get the position/promotion

Regarding objective statements, they can help illustrate where you’re headed in your career

  • This kind of detail may be better placed in your cover letter
  • If you’re putting it in your cover letter, you can give it a bit more breathing room - you can provide a paragraph about why you want to be hired and how it fits into your overarching plan
  • Include one if you can find a single sentence that completely summarizes you, and you’re really passionate about it

You should absolutely tailor your resumes to each job posting

Highlight your student projects and why you think they’re significant - the project itself may not be important, but it probably taught you a lot

Try to build a story that leads from your personal history to the job you’re applying for

  • This is part of where you want to go and how the company can help you get there
  • It helps to have a history of work that’s relevant to the job

You should highlight things you’ve done outside of class - things that other students might not have learned

  • Personal projects say a lot about you - the things you do in your spare time for your own benefit say a lot about your personal character

Don’t stop at saying “took a course in Java,” describe the things you learned from the course

Having worked for a company’s competitor is still a significant achievement, don’t take it off your resume for fear of offending someone

Be picky about what jobs you’re going to take

  • On the other hand, taking an imperfect job is still good for networking and may help to build the skills that will take you where you want to go

Investigate the employer, in particular the people who will be involved with hiring you

  • “Tell me what you know about us” is a common question in interviews

Say you’re willing to relocate on your resume, they may forward your resume to another branch and give you a chance there

Non-family member references are your best bet, but if you’ve only ever worked for a family business, look for some non-family members in the organization to give you a reference (if possible)

  • At the very least, you want them to be specific about what you did on the job, rather than saying how smart you are or some other generic thing

On letters of reference:

  • Opinions were divided on whether letters of reference would actually be read
  • A letter of reference is usually written under duress, so their value is suspect
  • A list of references on your resume is good, though, because they can contact your references if they want to hear from them
  • Personal recommendations from people have a lot of value
  • Generic letters of reference will probably only hurt you
  • Getting a reference on LinkedIn is really valuable to recruiters who use the service
  • Include letters of reference only from professors who actually know you well - the key question is “Will you give me a good reference?”
  • Another option is to provide a list of professors who could be contacted, rather than including a bundle of letters of reference - this is even better if your program is closely related to the field and your professors are well-known
  • Let people know in advance you’re using them as a reference, and provide them with your resume and the job description
  • You can also coach them on what they can say about you, but this could backfire
  • If it’s been a while since you worked with them, you can remind them what you did for them
  • Character references are useful, but it’s better if they’ve worked with you/for you/were your boss
Sep 30, 2012 1 note
#Carleton
Windows 8 Pro for $40 - probably worth it

I was checking out a Maximum PC article about reorganizing your music library with MediaMonkey when I stumbled onto their review for Windows 8. It’s a fairly measured review of what Windows 8 has to offer for a happy user of Windows 7 on the desktop. They don’t spend any time on the touch controls, or what the OS means for tablet users, or any of the sort of thing you’d find in Ars Technica’s wonderful coverage.

If you happen to be one of those users, it’s probably worth a read to decide if an upgrade is worth it. It’s actually fairly concise, but for your benefit and my own, here’s a quick reference:

  • The second page touches on using Metro and the state of multi-monitor support in Windows 8. The moral of the story being “Tablet Mode probably has nothing to offer for you on a desktop” (but you may be able to hack it away with the free Classic Shell or RetroUI which is $5 for three PCs)
  • Third page discusses the improvements to the desktop experience - most notably startup speed (which, in terms of time saved per day, could be worth a lot of money over time)
  • Fourth page is short and mentions some other new features, noting that it’s probably worth $40 for an upgrade to Windows 8 Pro (from XP through to Win7)
  • Fifth page has some performance analysis of Win 7 vs Win 8 (surprise: there are pretty much no downsides to Win 8), talk about price, provide a few recommendations for minimizing the Tablet Mode side of things, and list a lot of miscellaneous improvements (better USB 3.0 drivers, better rendering stuff, and suspending desktop processes)

So, the thing about this upgrade is that it doesn’t have a lot of immediate value, but it has a lot of long term value. Some time next year when almost everything is compatible with Win8 (and tools to remove the Tablet Mode are perfect), the improvements would be nice to have - but not quite $200 worth of nice. But definitely $40 worth of nice. I guess January 31st is plenty of time to buy in, but I might hold the license a bit longer than that before using it. Even if there are restrictions on the $40 digital version, it would probably still be worth $60 for the physical version.

Plus, this is an upgrade to Windows 8 Pro - there are a number of nice features in the Pro versions of Windows, especially when it comes to compatibility. For example, Win7 Pro has “Windows XP mode” which is either a virtualization tool or a super-powered compatibility mode (I don’t know which, I haven’t used it). Win 8 Pro would probably have that and a similar mode for Win 7, if things do go wrong.

All in all, I actually think this is worth jumping on. Write the license key down and hold onto it for a while. Don’t worry about the touch stuff, don’t worry about the Windows Store, because it sounds like they’re entirely optional (provided you can stay in desktop mode). Everything from Windows 7 should work the same way, but with some bonuses. As a bonus, QTTabBar sounds like it will support Win8 fairly quickly so you can make Explorer not suck and, hopefully, remove the Ribbon.

Well, I’ve convinced myself that I should invest in this. Hopefully you’re convinced, too.

(this is actually an even better deal for me and anyone else who buys a Win7 PC between June 2nd and January 31st, 2013 - just $15)

Sep 18, 2012 1 note
#software
Adventures in New Laptopia, Pt 1: Security

Running as a non-admin in Windows, for the first time ever

Before I started laptop shopping, I stumbled onto a pair of blog posts suggesting that you should run as a standard user. The first is from Jeff Atwood, and the best part is the quoted list of stuff in the middle of stuff you’re protected against by being a standard user. Somewhere around the same time, I found a blog post about configuring Windows 7 to run primarily as a standard user. Unfortunately, there’s not enough info in that blog post on the pros and cons of running as a limited user, but here’s what I’ve found in the last few days:

  • Some regular actions will prompt you for admin rights on a daily basis (eg Lenovo updater service). This is an absolute pain and I so dearly wish to figure out a way to make exceptions for specific applications. I’m investigating a few options right now, but I’ll update if I find a perfect solution.
  • You can’t add administrator privileges to a program that’s already running, and you won’t get a UAC prompt when you need them. The program will just fail with some cryptic message. You probably won’t think of it until it becomes a problem. Example that I dealt with on three separate occasions today as I was setting up new software: I wanted to edit a configuration file stored in Program Files. I open my editor, make minor changes, then try to save. “Access denied”. I have to save my new version as a copy in a folder I own, open explorer, and cut+paste my edited version into Program Files. Explorer, thankfully, can prompt when I need admin privileges.
  • The “Run as administrater” option, and the command line utility runas don’t work the way sudo does in Unix. Unlike sudo, they suck terribly. SuperUser has a pretty good explanation of how they actually work and one answer recommends Sudo for Windows, which is complicated but seems workable. If you do check out Sudo for Windows, the Wayback Machine has rescued its documentation from the depths of Internet history (the year 2007).
  • If you leave it with the default settings, MediaMonkey (which seems quite awesome so far - check out the files to edit section of your library! *swoon*) will re-check file associations every time you start it. For some unknown reason, while this can be done without admin rights in some other programs, MM will prompt you for admin rights/UAC whenever it starts. If you turn that option off, it seems to work fine. Extremely thankful to this thread for helping me out on that.
  • Otherwise, everything seems to work more or less fine. Because I’m running as a standard user all the time, I don’t run into issues with files having different ownership thanks to the terribleness of “run as administrator”. Having to enter a password to install software really didn’t bother me, even though I installed a ton of stuff on this computer. The problems I’ve had so far have mainly been centered around common actions requiring admin privileges, and as mentioned above, I’m looking into ways to make exceptions.

Hardware security features

My new laptop is a Lenovo, and I’ve jokingly told people that I needed one because I am a serious business person working at a serious business. It’s quite a change from my consumer/media focused HP Pavillion laptop. For instance, I added a fingerprint reader for twenty bucks. Hard to tell so far whether it’s actually useful or just a novelty, but it’s generally faster than typing a password to login. At least, once I figured out that it only works if you swipe left-to-right (but it doesn’t say that anyewhere). Now, I know fairly well just how imperfect finger prints are as a biometric, considering I read a handful of papers comparing different biometric approaches over the summer (they can be fooled by replicas and other means, your fingers can be cut off, not 100% reliable, etc). I definitely don’t want to rely on it (aside: but then, Windows passwords aren’t particularly hard to reset…). Not to mention that shoddy firmware can make you less secure than ever. Still, it’s convenient to have it as an option alongside my password.

However, let it be known that I’m prepared for the worst. Lenovo’s software allows you to register any fingers you want for the scanner, so I’ve registered my least useful fingers. If you want into my laptop that badly, please, just take my left pinky.

Some other things that provide hardware security in a different way:

  • “Airbag protection” for my inexpensive spinning platter harddrive. If excessive motion is detected by the system, it will turn off the disk so that it isn’t damaged (or at least, not so badly damaged?)
  • They have some pretty good diagnostics of the health of your hardware, like the battery. For instance, they have a measure of your battery’s “wear” - how much its max capacity has decreased from its theoretical maximum. It’s a very welcome feature after the silently degrading health of the batteries for my previous laptop (its original battery is nigh-unusable now).
  • There’s a yellow warning icon in my taskbar chiding me for not having a backup solution yet. Sheesh, I’m still investigating rdiff-backup and saving money for a NAS at my dad’s!

I haven’t dug too deeply into all the pre-installed stuff, because consumer focused OEM software is either crappy or driven by greed… often both. Some of Lenovo’s original stuff seems like it might not suck, so I’ll definitely have to investigate. The above are a few examples of things that have yet to annoy me - and in fact, I’m actually glad to have - which is pretty high praise for OEM stuff from someone used to Dell and HP.

As for the pre-installed software they didn’t make… The less said about their generous offer of a free 5 gb SugarSync account (as if that’s somehow a special offer), the better.

Sep 9, 2012
#hardware #software
Interactive fiction jam results

Summary: The theme we wound up with was Metaverse. Four hours wasn’t a whole lot of time for us to get familiar with Inform 7 and create something interesting. Managing scope is really important!

So, we ran a little bit late and started around 12:30, but most everyone was able to stay until 4:30 so it worked out. Unfortunately, announcing the theme at the start of the timer might not have been the best idea - I don’t know about everyone else, but I spent at least 30 minutes brainstorming. Still debating with myself whether picking the theme in advance and dedicating the four hours to implementation would have been better.

On the other hand, being a prolific writer, Crate was able to mostly finish what he had in mind. Not sure if it’s because he had a better idea of the scope of what you can write in 4 hours, or simply because he wrote so much faster than I did. Either way, good on him! For what it’s worth, Inform 7 source code is measured in words, and I had 800 vs his 1600. Still, I know I wouldn’t have my initial idea “completed” even if I had close to 2000 words. Vael and Maryanna are in a similar boat, I think. So much for putting our completed work online after four hours!

We all had fun, though, barring the occasional frustration with learning some of the more complex idioms of Inform 7. So we’ve agreed to get together once a week, for an hour or so, and continue working on our ideas. I don’t know how long we’ll keep it up, but it should be fun.

Lessons learned:

  • The metaverse theme inspired me (and possibly the others) to work on a much grander scope than was actually reasonable. Most metaverses are developed over the course of multiple novel-length works. That usually takes longer than four hours.
  • Creating an environment for your player to mess around with is difficult. There are a lot of tiny details to take care of when their actions have no constraints. What if they want to lick the torches you put on the walls? What if they try to run off with a giant stone statue? You have to decide early on how you want your game to deal with that kind of behaviour. Maybe for the theme of your game, it’s better to insert funny easter eggs everywhere. Or maybe you should have a terse “I don’t see any reason to do that” response to all unintended commands.
  • Writing descriptions of all the areas and objects your player will see is time-consuming. I spent almost all of my time doing that, in fact, and ran out of time before I could introduce the player to their first NPC and have them learn their first spell. So what I ended up with, after four hours, was five areas and a handful of objects, all with nice descriptions in case the player decides to examine everything. Oh, and I had a sweet door connecting two areas. Also, I had some plural objects I’m pretty happy about ( eg: The pews are here. They are scenery.They are supporters. The description is “Some pews.” – I would like to be able to say “their description is”, however)
  • Working with NPCs in Inform 7 wasn’t as immediately obvious as I had hoped it would be. Having conversation that doesn’t rely on “tell NPC hello” or other awkward constructions requires a bit of research. I’d like to find a way to have dialogue “come from” an NPC instead of the standard narrator. It seems more natural to write something like ‘NPC, say “Blah”’ in my code than 'say “NPC says blah”’. I assume it’s possible, but I didn’t have time to find out in the last 20 minutes. But perhaps I’m just being too object oriented, and there’s no real difference between the two.
  • The documentation support in the Inform 7 IDE is pretty awesome. The manual for the entire language, and a pretty extensive Recipe Book, has built-in search from the IDE. The index is even better, though - among other things, it lists all the objects you’ve declared and allows you to navigate to their definition with a click, all the rules that have been defined, all the verbs the player can enter, all the phrases you can use in your code (with examples and links to the manual), the entire object hierarchy of your game… It took me a while to notice all of this stuff was there, but once I started exploring the index, I was able to find most anything I wanted from within the IDE.
  • DSLs can be pretty cool! Everything about Inform 7 is focused on making interactive fiction, and it’s a superb tool for that task.

I put my code up on GitHub in case there’s any useful tricks in my source (warning: doesn’t compile right now). One thing I will point your attention to is the use of square brackets around the names of objects in prose - I learned that from a blog post by Aaron Reed, and I think it’s a great idea. Essentially, all you have to do is put square brackets around the names of nouns in your descriptions of locations. What this does is send the compiler looking for an object that can be referred to by the bracketed text, and if the compiler can’t resolve that name to an actual object, you get an error. If you wanted the object to exist, this is a good warning. If you don’t want such an object to exist, then you have to change the description so that it doesn’t imply there’s an object that the player can’t actually interact with.

As a bonus, if you find yourself using too many nouns, you have to get a bit more creative with your prose - I happen to love the noun-less version of the second description. I’m used to that sort of intense editing, though, and maybe you’re horrified by the idea of spending so much time thinking about every little sentence. That’s perfectly ok, because it is time-consuming. But in the long run, I’d much rather play a game full of awesome prose like that second version. Plus I wouldn’t wind up wasting time playing around with non-existent objects. Think of your players! Think of your satisfaction as you read your beautiful prose in the future! I’m often pleasantly surprised by the writing in my old blog posts, when I go digging through the archive, so obviously I think it’s worth putting in the effort.

Sep 4, 2012 2 notes
#gaming #writing
Interactive fiction jam delayed; more resources

Rather than lose ¼ of my participants, I got everyone to agree on moving the date to Monday instead of today. Which works out well because it’s Labour Day, a useless holiday that has no festivities to keep people busy! Of course, the people participating who have spoken to me already know this, but who knows - there could be lurkers.

Anyway, I’ve been realizing the kind of effort that goes into making an awesome Inform 7 game like Violet. It would take more than four hours to produce something like that, especially as complete beginners. So I’m thinking that we’re going to have to tend more towards creating short stories with a bit of interactivity, for fear of having things spiral out of control.

At a bare minimum, I’m thinking of suggesting that everyone watch this video by Aaron Reed to get a basic introduction to Inform 7 and its integrated development environment (IDE). Then, go through this tutorial by Stephen Granade for a more hands-on introduction to the system - learning to create rooms, props, and rules. I’m hoping that’s a good enough baseline to produce something in a few hours without losing time on learning the basics.

Aside from all of that I’ve been busy looking into a variety of Inform 7 things. I get to be like that when presented with an extensible system. Rather than clog up my tumblr with a huge list of stuff, I’ve put everything I’ve found up on SimpleNote:

  • General notes: https://simple-note.appspot.com/publish/pnNXVd
  • Extensions I’ve found that seem like they might be useful: https://simple-note.appspot.com/publish/blW3Q2

It’s worth looking through to see if there’s anything that inspires you. Maybe you want to make a really conversation heavy game - if so, check out Eric Eve’s numerous conversation-related extensions (among other things). Maybe you want to make something modern involving computers and other real life objects - Emily Short has some extensions for that (again alongside a lot of other stuff). She also has an extension for incorporating mood variations in your non-player characters… And now I’m just repeating everything I wrote in SimpleNote. Go on through the general notes for some information on best practices and other junk, and then the extensions one for fiddly stuff you might like.

Finally: I’m working on making a list of themes to pick from. I’d be happy to take suggestions. My intent is for the theme to provide a mental challenge, since you can’t just write whatever you want. At the same time, it should be broad enough that different interpretations are possible. So here’s what I’ve got so far:

  • Companionship (writing other people/creatures is hard, this may be a cruel option)
  • Underwater (courtesy of Vael, though I’d rather we didn’t all write some Atlantis/BioShock story)
  • Possession (interpret any way you please)
  • Metaverse
  • Duality (courtesy of Crate, but I dunno - contrasting two disparate parts or elements is a pretty abstract theme)
  • Underworld (Crate)
  • Recycling/renewal (Crate)
  • Hostile negotiations/enemy of your enemy (Crate)

I know, it’s not a terribly impressive list. I thought of a few more but.. uh… I forgot to write them down. So, please do suggest more! Just don’t say Brave New World or Stranger In A Strange Land or anything like that. Come now, we’re better than that. To make life easier, I’m also going to suggest we avoid high fantasy sort of stuff because it’s incredibly difficult to do well.

So yeah, that’s where we’re at! I’m having a lot of fun with this.

**Link to a .rar of extensions I thought might be useful, up to date as of September 2nd 2012: http://uninotes.thebcn.net/i7x.rar

Installation instructions: * Extract all .i7x files into one folder (note the ATTACK extension in its own folder) * Open the Inform IDE * Click File * Click “Install extensions” * Ctrl+a to select all files * Click ok

Bonus: documentation for all extensions is available once they’re installed. Go to the Documentation pane, click on “Installed extensions” below the final chapter of the manual, and then click on the name of an extension.**

Sep 1, 2012
#writing #gaming
Next page →
20162017
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201520162017
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201420152016
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201320142015
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201220132014
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201120122013
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
201020112012
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December
20102011
  • January
  • February
  • March
  • April
  • May
  • June
  • July
  • August
  • September
  • October
  • November
  • December