Thursday, March 31, 2011

Reflections and Journeys

Today is officially my last day at OldEuropeU! Generally, I’m not nostalgic about these things; I tend to look forwards rather than backwards. However, maybe 20 years from now, I’ll look back on this post and feel some nostalgia

Like most PhD students, I’ve had my fair share of peaks and valleys along the way. I wouldn’t say I’ve had the best advisor but I have heard of others having worse. And the difficulties along the way have definitely made me a better researcher and a better academic. This includes good things like finding alternative methods to communicate with someone better which helped me grow as a person. And some bad instances, such as doing things in spite of someone else to prove you’re a top researcher and you deserve more support. Motivating a PhD program on rage and vitriol isn’t so great but it can help during the slog of long hours in the lab or wee hours of the morning writing papers.

A little over 4 years ago, I set out to get a PhD and obtain a position in academia. You don’t graduate and get a position in academia without some key support from your PhD advisor, and I got it when I needed it most. And I guess whatever was in those letters to the numerous search committees worked. It’s only after the fact that you realize those things. Now that I’ve reached that marker in the road, I’d be lying if I said didn’t have a successful PhD program, including the ups and downs.

But I’d also be lying if I said I wasn’t glad the “big European adventure” was almost over. I am looking forward to being back in the US and working at a top tier university. I don’t mind the uphill trek towards tenure ahead, I just hope I embark on a path that doesn’t have as many hills. .

Wednesday, March 30, 2011

Manufacturing and Corporate Responsibility

The New York Times had an interesting article a few days ago stating the Future of Manufacturing is Local by Allison Arieff. It’s quite an interesting article and it brings up many good points. Overall, the article describes how in two (expensive) cities, San Fran and NYC, local manufacturing and production businesses have sprung up, which are different from our traditional notions of manufacturing. Rather than large manufacturing plants like traditional setups for cars, airplanes, etc., these companies have smaller, just-in-time manufacturing facilities that are more able to adjust to changing demands.

This is another example of how manufacturing in the US can change to meet today's new manufacturing environment and be successful. I'm reminded of another example of how novel manufacturing techniques can put the US back on the map as a manufacturing power. I used the example of high speed machining in my first Engineer Blogs post. Apple changed from using folded sheet metal and rivets/screws to single body aluminum frame for it's notebooks. Not only is the design lighter, stronger, and cheaper to make than its folded counterpart, but all of the chips from its single aluminum block can be recycled and melted down to make new aluminum billets. They have a video of it here. While I think Apple, the Brand, is sooo pretentious, I have to commend Apple, the Company, on using this technique.

What I don't like about Apple is that they still manufacture their stuff overseas, where they do not have to consider the environmental impact of their manufacturing processes. This is the so called "green manufacturing. Last fall, I was at a conference where the keynote speaker was from GE and he made no attempt to say they were switching to green manufacturing and avoided the questions about manufacturing in the US. (GE as a company is in my doghouse because GE doesn't pay taxes like everyone else.) These local companies appear to care about their environmental impact and are trying to employ green manufacturing.

And in addition to green manufacturing, the people managing the companies are coming together to help support each other to maintain their products are greener and more locally sourced, which helps them directly impact their local community. Providing jobs, increasing local commerce, renovating derelict buildings, etc. That's something you don't see big companies doing now. These companies seem to be willing to sacrifice a significant portion of their bottom line to have a greater local impact. Large multinationals should take notice.

As someone who grew up in the greater NYC Metropolitan Area in NJ, I have seen and grew up around the ruined husks of once large manufacturing hubs like Newark, Jersey City, and Hoboken. I think it is a fantastic idea that these companies have focused on making their products locally to try to revive local manufacturing. Sure, they pay more in property taxes and their employee costs are more than overseas manufacturing. But they also don’t have to worry about shipping costs from around the world and they are better positioned to deal with changes because they are overseeing the complete manufacturing process.

And as I move to a Rust Belt city where SnowU is located, I'm hoping to connect with local companies And I will adapt my research topics to help impact them. And I will hope to get them more involved in the university (if they aren't already), which can help further strengthen the local community.

Tuesday, March 29, 2011

On Networking and Jargon

Today, over on Engineer Blogs, I make some sarcastic comments on networking, business jargon, and describe my mission statement. You can check it out by following this linky.

Monday, March 28, 2011

(Software) Tools of the trade

Now that I've finished my PhD program and I will be spending my last day at OldEuropeU this week, I've also found out that I must return my 4 year old laptop. This tank is archaic, with under 100 GB of disk space, a wireless card that's on the fritz a lot, and a fan that reminds me of my knees after I've ran a 10k. Yet, at the same time, this computer is my life blood. I've managed to wrangle another few more months because I won't get my new SnowU computer until I officially start in a few months.

One of the things I'll have to do with the new computer is transfer data and reinstall a bunch of software. This post will help me do two things. One, this forces me to categorize my main software tools. I'll probably have to update to newer versions but at least it's a start. Two, you can suggest different software tools that you use and why they might be better than my current stuff. I'm always looking out for the easiest software tools to perform a particular task. Here goes:

Basic Internet Tools:
  • Chrome with Gmail Notifier (great for not having a browser open) and Minimize to Tray for Chrome (allows you to free up your taskbar). Generally, I leave an incognito window in my taskbar for GEARS stuff (email, twitter).
  • Dropbox is great for file sharing. NewPhD introduced me to it and it has worked really well for keeping up with the latest data sets. I'm contemplating getting the 20 GB extension unless I can figure out a better way share whole folders in Google Docs/Sites. Dropbox is a $5 monthly for whereas Google charges $5/year. I'm cheap like that.
  • Skype: in-laws need to see NanoGEARS while we're overseas. Also, I hired a PhD student over it and DrWife had her interviews over it as well. Would be better if my wireless didn't suck.
  • AIM and MSN for keeping up with old friends. Can't we pick just one instant messaging program and stick with it?
Productivity Suites:
  • MiKTex 2.7: I know I need the newer version but it is a hefty 7 GB download and I can't handle that right now. MiKTex, for those that don't know, is a LaTeX distribution for typesetting and making professional documents. I used it for my thesis and for all of my journal papers. It's great. I'll probably upgrade at MiKTeX 3.0.
  • Crimson Editor: General purpose text editor. It handles everything. Tex/bib files for LaTeX, M-Files in Matlab, C/C++, Java, tons'o'other programming languages. It's fast and compact. The downside is you have to make batch files to link your LaTeX compilation to your command prompt. Once you have it set up though, it's fine. FYI, never crashed on me once. I think they've stopped upgrading it or working on it.
  • JabRef 2.4: Fantastic reference manager. Natively supports LaTeX and it's free! Can export to a bunch of file formats including EndNote and Office. Helps organize all of my references and papers that I've read. They're up to 2.7 now... I think I need to upgrade.
  • MS Office: Yes, I mainly use it for PowerPoint and making presentations. I could use LaTeX but that's much more time consuming. Also, I'm working on a book with a colleague and we've agreed to use Word. Sucks but that's life sometimes.
  • MathType for MS Office: I wasn't sold on MathType but it was required for this book. But, now that I've used it a bunch, it's not so bad. Still a clunky interface and prone to MS Word crashes but when you have know choice, you make do.
  • Inkscape: Inkscape is the open source Illustrator or Corel Draw. I need it for EPS figures and making line drawings. It's still not a version 1.0 (or even 0.5 for that matter). The interface isn't intuitive at all and it never actually takes the dimensions that I want. With that said, it's easier to use than Illustrator and cheaper. I've managed to use it successfully for simple line drawings but anything advanced is way over my head.
  • Adobe Suite: I have the full suite but I mainly use Acrobat and Illustrator. Illustrator is a clunky interface but it can save EPS figures so I need it. Acrobat is something I use sparingly because there is...
  • Foxit Reader: Waaaay Faster than Adobe Acrobat. Also, blocks the "section reading" attribute for PDF files which is great. When I click and drag the page with the hand tool, I don't want it to resize or zoom in.
Power Tools:
  • Matlab and Simulink: I've already posted here about how I love Matlab for templates. I use it for data analysis and plotting. I'm probably not the power user that DrWife is but she's slowly converting me.
  • Labview: I use Labview less because I think Matlab does everything that Labview does and does it better. Graphical programming is terrible and it's supposed to make things easier for non-programmers but I find it only makes it more confusing. There is one caveat. The NI FPGA module can only be programmed via Labview so when I want to use that, I have no choice. Oh, an it's default 3-d surface plot format is better looking than Matlab.
  • Solidworks: Wow, about 7 years ago, I was introduced to Solidworks as an alternative to Pro/Engineer, Pro/E2 and Pro/E Wildfire and I've never looked back. Even better if you can afford COSMOS, their FEA package.
  • Ghostscript: Ghostscript is good for converting EPS to PNG pictures and is a general tool in conjunction with LaTeX.
  • Keil uVision: Software for programming the microcontrollers that I use. It's C and I hate C, but ehhh, gets the job done. The software is fine. C Sucks.
System/Miscellaneous Tools:
  • 7-Zip: Better zipping program than native Windows XP and it's free. Works well with ZIP, RAR, JAR, and tar-balls (you crazy linux folks...).
  • Eagle PCB: I don't do it often but when I need simple PCBs, I turn to Eagle. I use it in conjunction with the Texas Instruments Analog Design software and FilterPro for making and proofing simple circuits. Also, for checking the Gerber files, I use GC-Prevue.
  • HijackThis: Sometimes, you just need to take back Windows XP from itself.
  • InfraRecorder: Simple CD/DVD burner software.
  • Daemon Tools: Ever have an ISO file that you don't want to burn to a CD? Use this to emulate a CD rom drive in a windows folder.
What are you go-to software tools? Any suggestions for better software?

Friday, March 25, 2011

Giving everyone an A is a terrible idea.

A few days ago, Cherish the Scientist tweeted out an article (@mareserinitatis) on how Everyone Should Get an A. David MacKay brings up a few interesting points in the article. These are largely centered on two themes. The first is the rate at which a student learns in conjunction with their starting position. If everything is linear, this is the classic Y = mX + b where Y is the level you’re trying to obtain, m is the rate at which you learn over time, X is the time it takes, and b is your offset starting position. (Yes, whenever you use an equation, you should explain the variables…). The second theme is there should be a minimum obtainable threshold that students should achieve. Thus, if students are “forced” to achieve an A to graduate, they should be allowed to take longer. The first issue is persuasive but has a problem when applying it to real life. The second argument, on the other hand, has some serious holes.

I don’t have any hard evidence for this but the thought process should fit match most anecdotal preconceived, prejudiced notions. Your b value when you begin in college is a very important aspect. If students took more AP classes, generally they’re going to start with a higher b. The same could be said if your parents were highly educated and/or come from an upper class economical situation. Students who aren’t fortunate to be in those situations often have much lower b values and generally have other issues to contend with once they get to college. Working a job on the side to support themselves comes to mind.

In principle, if you could test a student’s knowledge in the beginning and in the end of a course, and come up with a slope-o-meter, that would be a good to obtain an accurate picture on how someone learns. That would be very good for assessing the effectiveness of a teacher and identifying the potential of the student. This, in theory, could go a long way towards helping the educational system improve how it is educating its students.

There is one slight, 800 lb gorilla sitting in the corner of the room. Life doesn’t work like that.

Figure 2 in MacKay’s paper shows a prime example of this. Let’s assume you have some miners trapped in a coal mine and instead of it being exam-time, it’s actually people-are-going-to-die-time. Who do you want deciding where to drill the hole? A, B, or C? If it’s my life, I’m going with A because they, at this given point in time, know more than the other two. Sure, eventually B and C will surpass A. But now you’ve got a bunch of explaining to do to a family on why their loved one died.

Look, it sucks that B and C started out in a more disadvantaged position. It can certainly be argued that is a combination of social, economical, and educational factors. And yes, society as a whole should strive to correct those. But if we’re talking about university and graduate level education, you have to draw the line at some point. This brings the second theme, allowing indefinite time to finally get your A.

If you’re allowed indefinite time to get an A (or whatever you want to call the achievable mark), you’ve just given no incentive to learning how to get stuff done. This is a huge problem at OldEuropeU where the students are allowed to take a class as many times as they want to get a passing grade (6 out of 10 BTW, not even an 8 or 9). In an educational system that is nominally free for the students, that’s a huge overall tax payer drain. I have colleagues that took 10+ years (in a 5 year program) to get a BS and a MS and they spent that whole time in school. They didn’t take time off for work or family or whatever. They just spent too much time partying. If they were in the US system, they would not have been engineers after year two. They would have failed more than the allowable amount of classes, had an insanely low GPA, and would have been kicked out of any ABET engineering program. I’m sorry but not everyone should be an engineer just because they want to.

In the real world, you have to deal with meeting deadlines. It sucks. Everyone hates it. And it’s a shame that we don’t have a culture of saying “No, we can’t move on because this thing isn’t ready yet. We haven’t learned enough to make this product fully do everything we wanted.” Everything from software (security flaws), to baby strollers (safety recalls), to cars (stick accelerators and faulty air bags), to food (E. coli and salmonella poisonings) has their issues because of deadlines. But, unless you’re going to change how the world works, people cannot be afforded indefinite time to do everything. Nothing would get done then.

So no, I don’t think everyone should get an A.

Thursday, March 24, 2011

Senior Engineer vs Tenured Faculty

On Tuesday, over at Engineer Blogs, I guest-posted about how universities are changing their new shiny into User Facilities. An Old Engineer posted a (loosely connected) comment on how some of the undergraduates are “in college only to learn the basics”. An Old Engineer then goes on to discuss how my generation doesn’t know anything. Kate summed up a response that I knew was coming: "The old folks always bitch about the young ones not knowing anything and wanting to move up fast. The young folks always bitch about the old ones not ever wanting to change anything."

I thought more and more about An Old Engineer’s comments, specifically on young engineers expecting to be senior engineers within 5-10 years. I didn’t want to be rash which is why I didn’t post yesterday. (I know, shocking. For those that know me, I sometimes “see by the light of my burning bridges [Terry Pratchett]”).

And you know what? If I pursued work in industry, rather than academia, I would expect to be promoted to a Senior Engineer within 5-10 years if I kept to the same standard that I hold myself to now. The main reason is because within 7 years, I’ll either be booted from SnowU or have tenure, which to my eyes is the same thing as being labeled a Senior Engineer.

I can do “bolt torque calculations” and I don’t need any help setting up proof-of-concept experiments. Oh, and that is after I’ve built my system by using my skills on a mill and lathe. And once I’m done with the experiment, I can write it into an effective report (or in my case, journal paper). I have numerous instances of that. And lastly, once I have the results, I have no problem standing in front of a crowd and saying “these are our results, look at how cool our research is.” That’s the sales aspect that you need in academia and in industry.

I’ve spent extra 6 years in school, wrote effectively 2 books (MS Thesis and PhD Thesis) on two entirely different topics. I’ve learned how to juggle class work, several research projects (even self initiated ones), publishing, academic politics, mentoring students, occasionally teach, and serve on committees in the university and the community at large. And the few universities that did manage to look past my lack of a postdoc on my CV and application package thought I was good enough to bring in for an interview and ultimately offered me a tenure track position.

So yes, if I keep on the same track, I would expect to be a “Senior Engineer” in 5-10 years. I’ll have to prove that I can bring in research money, successfully mentor my graduate students, and effectively reach undergraduates, some of whom might only “be in college for the basics”.

How is that any different, in principle, to what would be expected of a Senior Engineer? What do you expect Senior Engineers to do? How would that be different from Tenure Faculty? What are the correlations between the two? Thoughts? Comments?

Tuesday, March 22, 2011

Monday, March 21, 2011

Where’s the column for Knowledge Learned on the balance sheet?

My PhD research was part of a project jointly between OldEuropeU and two nearby Institutes. Like most projects, towards the end the money became scarcer and equipment was harder to obtain. One of the things my colleagues at their Institutes had to deal with that I didn’t was charging hours and making sure they had sufficient budget to charge those hours to the project. This was a completely foreign issue for me and caused a “point of contention” at certain instances when the equipment budget was sacked for more working hours.

This was very frustrating at the time and still perplexes me to this day. There are two reasons for this. The first is you have the dichotomy of finishing the project because you need the “deliverable” and you can’t finish the project because you cannot find more money to make up for the time needed. This dichotomy is why every public works project ALWAYS runs waaay over budget. The argument is simple. You need to deliverable and you’ve already spent X. Either you waste X and don’t have your deliverable or you spend (hopefully only) delta X and then the problem is solved.

While this is distasteful, especially when used to the general contractor’s advantage (I’m referring to those massive, multi-million dollar public works projects), I can understand the logic. It’s the perfect sort of argument for always asking for 15% more than you need to complete the job, because you’re never going to budget perfectly.

The second reason is the more perplexing issue. Maybe this has something to do with some management theory. I already mentioned that the equipment budget was swapped with more hours for the project. But at the same time, most institutes have the same mantra about building versus buying. It goes something like this: “It’s too costly for me to figure something out based on my time (say $200/hr). Even though it will only take a few days of my time ($200/hr x 3 days x 8 hr = $4800), our workshop is too expensive because it’s a User Facility (more on that later), so we should just buy the equipment we need for $5000 and wait 6 weeks for it to be delivered”. But we just sacked the equipment budget for more hours so we can’t buy what we needed. Plus, we lose the 5 weeks (or whatever time) due to delivery times.

What I’ve come to realize is that managers and other idiots who think this is the way to run a research group in an institute/company treat their employees as pawns with no ability to learn, adapt, and grow. How much knowledge do researchers gain by doing something by themselves versus just buying the solution? Probably, that knowledge would be very useful on future projects. Who knows, maybe during the course of tackling this mini-project, the researchers come up with some new greatness that the company can profit from.

It seems that we’re so focused on the quantifiable results that we’ve lost the ability to think in terms of qualifiable, abstract, intangible results. I know there is no place on the balance sheet for Knowledge Learned but maybe there should be. Now, some of you who are reading this have transitioned from a university setting to a corporate setting where you have to deal with this on regular basis. Does your company operate with this philosophy? Was it difficult to grasp? How does your company quantify knowledge?

Friday, March 18, 2011

Two extremes from the same paper

I recently received a follow up email from a journal for which I regularly perform reviews asking me to review and comment on a revised manuscript from a previous review. This is not something unusual in my experience and since I reviewed the article once, going over a revised manuscript on the same topic is par for the course.

The first thing I did is review my comments to the authors and then I looked at the comments from the second reviewer. What I saw actually shocked me. I had extensive comments, particularly about basing their entire support for their method on a non-peer reviewed white paper, and it was clear (to me) several things needed correction prior to acceptance. Scientifically, the article was actually very good. But the presentation, references, and supporting discussion needed work. The second reviewer just had a stirring recommendation to accept because this was the greatest engineered piece of work since the machine that slices bread. The second reviewer had no other comments.

In my experience, I have never seen an article 100% perfect for publication and neither have the other reviewers (from the review reports I've seen). Also, I've co-authored enough articles to know there are always things you can make better, either by better graphs and figures or by improving the discussion. And, in fact, when I submit an article, I freely expect the "once these changes are made, I expect this article will be suitable for publication" comment. There are a few reasons for this.
  1. No one does anything perfect the first time, at least not me (or I? my grammatical skills are terrible!). I have a colleague who has, along with his 5 co-authors and 2 reviewers, missed a misspelling in the article title and it was only caught during typesetting.
  2. Fresh eyes always bring new things to the fore.
  3. You're going to have a stupid mistake. Everyone does.
  4. Reviewers, and by reviewers I mean Everyone, likes to nit-pick at other peoples' work.
That brings me to a couple of questions I have on the subject. When you submit an article for publication, do you expect minor revisions or do you expect it to be 100% accepted? When you review an article, do you ever accept without any changes? What should be the normal amount for both?

Thursday, March 17, 2011

Independent Studies for One and All

I haven't blogged any this week because like anything that goes up, it must also come down. I finished last week on a decent high and Saturday was my birthday so I thought it was all going well. And then NanoGEARS caught some daycare baby plague and promptly passed it on to me. She seems to be fine now though, thanks for asking.

I'm somewhat disappointed that I didn't post earlier this week because writing usually clears my head and gives me some time to relax. And I know all of you were fretting that my daily post wasn't showing up in your RSS reader so I want to apologize to my ten(s) of fans out there.

Now, on to the topic at hand.

There was an Op/Ed in the New York Times on letting kids make up their own high school curriculum by Susan Engel that had some very interesting things in it. Essentially, 8 students who spanned the spectrum of high school success got to plan their own curriculum for a semester. It talked about the increased student motivation and how they set goals that were at least as high as a typical AP class. It's an interesting study and I think has some potential as an educational method.

One place that I would like to see this curriculum model applied to is at the graduate level. The reason I say this is because I took traditional courses (and wrote a MS thesis) at UGU whereas, at OldEuropeU there are no defined classes for your PhD. So I've seen both types of systems personally which both have some definite pros and cons. I'll tackle the traditional system first.

I ended up taking 8 classes at UGU during my MS work to satisfy the coursework part. Of those 8 courses, I only really learned anything in 3 of them and none of that stuff I learned is knowledge I really use now. I still remember the stuff from those 3 should I happen to need it but I really couldn't tell you what was useful in those other 5 classes. I remember doing work for them (and a lot of work for that one stupid graduate math course that was the biggest waste of....) and taking tests and getting good grades but nothing really stuck with me.

Taking 5 classes that were essentially useless for my previous research and my current research (I made a big left turn when starting my PhD) seems like a lot of wasted time and effort on my part and the part of those professors. It seems like going through the motions for the sake of going through the motions. I read all these blogs and hear all of these professors discuss how much work their doing for teaching, research, and proposals. Maybe not teaching unnecessary classes is the way to go.

On the contrary, at OldEuropeU, I didn't have any classes for my PhD work. This is a blessing and a curse. The good part about that is you don't have to take any unnecessary courses. You can spent all of your time doing research, which is what you and your advisors really want anyway. Without classes your first two years, you can really make headway on your research. This will hopefully translate to more papers, more conferences, and a competitive advantage for you when you finish your PhD. Also, you really focus on the things you need to learn for your research. You don't get sidetracked by "the new shiny" that occurs when you do take a class you like.

There are some extreme downsides too. You need to be 100% self motivated to learn something. Just going through the motions so you didn't ruin your graduate GPA isn't enough. You end up lacking in something. In some cases, this is diversity, i.e. you weren't exposed to different concepts and different ideas because you had to take new classes. In other cases, you lack a basic and fundamental understand of the field. This is where I lack because of not taking PhD classes. I started out with some basic assumptions which allowed me to skip over the whole fundamental background in the field where my PhD subject rests and now it's hard to go back over to learn that.

I think graduate classes should largely be based around independent studies in predominately your research field. For instance, I took a controls class that I couldn't tell you a thing from it. Yet, during both my MS and PhD work, I had to build working control systems. In both cases, I managed to get them working but that was mostly though trial and error. Rather than taking a book-heavy course on controls, it would have been much more useful for my class to be a study on this particular control system. In both cases, I didn't need an advanced understanding to get it working nor for papers and such, but it would have been to my betterment to gone through it more thoroughly. Once I had a real system that I was using, then I could apply all of those textbook things like loop shaping, and overshoot minimizing, etc etc. It wouldn't have been entirely necessary for my research but it would have expanded my actual knowledge in an area that I should have known something about.

I think most graduate students could pick about 4-6 topics in their research and do independent studies more thoroughly on the subject than if they took a class on it and just went over the theory.

What do you think? Would you rather have defined your own series of independent studies than taken classes? How many classes during your graduate work have been useful for you and your research?

Friday, March 11, 2011

What a way to end the week

This week was a more difficult, and more productive than most weeks. This was highly unexpected because DrWife was traveling, leaving me to take care of NanoGEARS on my own. Hopefully this hasn't scarred her for life... I ended up being a workaholic, basically working from getting up in the morning until I went to sleep with the only time off spent taking care of NanoGEARS as needed. She was at daycare, so it's not as if I left her alone all day.

Any, I managed to get a paper out to our internal review committee. I don't suspect there's any problems with publishing and it should have no problem through peer review. Another paper that's out at peer review got positive comments back and I expect that to be accepted any day now. Combine that with a 3rd paper about 90% done and only last might formating editing left before internal review, and it was a pretty good week.

Oh, I'm not done yet!

If you've kept up this past week, I spent a decent amount of time bitching about Word, Powerpoint, and all things Office. Hopefully, I managed to give out some good advice along the way. But even more so, that conference proceedings which brought on the MS Word tirade and much twitter bitching (@profgears btw :-D ) is basically done. I'm pretty happy about that because NewPhD is getting some good experience writing publications. And we have enough measurements and results for a full publication, which is great.

But wait, there's more!

I talked to some potential students at SnowU and I think I've found my first student. Very excited about that. Along the way, I found a very good contact at SnowU for supporting my research in a unexpected place. Also, DrWife, who was visiting her new company, checked out SnowU and saw the work in progress on my lab. Time to get excited.

One last thing!

It's my Birthday tomorrow, so if you have some Balvenie Doublewood, I'll raise a glass to that. If not, anything from Rogue is great too. I could go for a Dead Guy or a Hazelnut Brown Nectar.


Thursday, March 10, 2011

Templates, Why Matlab is the Awesomeness! (Part 3)

Powerpoint is ok for making basic graphs, as I explained yesterday. I still prefer to hardcode in LaTeX, but you can use something like Inkscape instead, which is open source and works with EPS files and is full vector graphics. When you need to plot data though, that's where Matlab comes in handy.

I hear from a lot of my colleagues that Matlab is too cumbersome to make consistent plots for their thesis's (is that the correct plural of thesis?). If you didn't take the time to make a proper template, then yes, it is too cumbersome to make consistent plots. But if you take the time to build a proper template, like yesterday with Powerpoint, you will be able to churn out nice graphs with relative ease. Let's face it, if you're working with large datasets, you're using Matlab anyway...

Basic Figure Setup
I'm going to assume you already have a plot on the screen. Prior to changing the figure properties, you an actual figure to work on. To build a test figure, I'm going to assume we have two datasets ( X and Y) that we want to plot with respect to time (t).

>> h1 = plot( t , X);
>> h2 = line( t , Y);

I typically work with colored figures so I want to change X and Y to blue and red. This is why I plotted them using separate line commands. If you want to change the MarkerStyle, and MarkerSize, and LineWidth, here's your chance.

>> set( h1 , 'Color' , [0 0 1] );
>> set( h1 , 'Color' , [1 0 0] );

The next step is to change the axes to fit the data. So if t is from 0 to 50 seconds and X and Y both range from -10 Volts to 10 Volts, then you need to set the axes to these limits. After setting the axes, it's good to go ahead and make sure you have enough tick marks and label the axes.

>> axis([0 50 -10 10]);
>> set( gca , 'XTick' , [0 : 5 : 50] );
>> set( gca , 'YTick' , [-10 : 2 : 10] );
>> xlabel( gca , 'Time [s]' );
>> ylabel( 'Signal Noise [V]' );

So now you have your figure with the right axes, tick marks, and labels, with the lines the colors that you want. But the figure size is scaled to fit your screen, and your fonts and font sizes are all off. Scaling to a particular width and changing font attributes are generally routine tasks that need to be done for all figures for publications. So I make a separate M-file called "Figure2c.m"and put it in a Path folder. Then I can just run it below my figure when I'm plotting my data.

>> Figure2c

Matlab will then just execute the commands in the file called "Figure2c". The 2c stands for two columns. I have other ones for log plots and wider figures as well.

Start with the Figure Properties.
This sounds eerily like yesterday. But if you know you only have 8.5 cm (sorry but I work in metric) of width to work with, you should start by making your figure only 8.5 cm wide. In you Figure2c file, you want to put the following text:

>> function Figure2c

>> set( gcf , 'PaperUnits' , 'Centimeters' ,...
'Units' , 'Centimeters' ,...
'PaperOrientation' , 'Portrait' ,...
'PaperPositionMode' , 'auto' ,...
'Position' , [2 1 8.5 4.5] );
>> PAPER = get( gcf , 'Position' );
>> set ( gcf , 'PaperSize' , [PAPER(3) PAPER(4)] );

The function command means the file runs when called from another file. The next block changes the current figure properties by grabbing the current figure (GCF). Matlab, by default, plots things relative to your screen size, which you need to change to real units. So I've switched them, and all other units in the figure to centimeters. Then I change the paper position so it start 2 cm from the left edge of the computer screen, 1 cm from the bottom and the figure is 8.5 cm wide by 4.5 high. I find this aspect ratio quite nice for figures. You can go higher if you want. The next two lines get the figure wide and change the maximum paper size to the exact figure size. When you save your figure, you won't have any excess white space around the figure because of the paper. This is critical for saving EPS figures.

Change the Axis Properties
After making the figure the right size, the next trick is to make the axes essentially fill the figure. This takes some trial and error (good thing I've done it for you). Like the figure properties, you need to change the current axis properties to work with your real units. So use the following...

>> set( gca , 'Units' , 'centimeters' ,...
'Position' , [1.3 1.1 6.9 3] ,...
'FontSize' , 8 ,...
'FontName' , 'NewCenturySchoolbook' );

This changes the axis units to centimeters. Now you need to position the axes within the figure box, and include space for the axis labels and tick marks. This where some trial and error can occur. I've found for most figures, the actual plot is 6.9 cm wide by 3 cm high and should start about 1.3 cm from the left edge of the figure window and 1.1 cm up from the bottom of the figure window. Then I change the fonts to 8 pt, New Century Schoolbook.

The last step for this part is to change the axis labels to the right font, fontsize, and color (if needed). To do this you need to first copy the previous label name.

>> holderX = get( gca , 'xlabel' );
>> holderY = get( gca , 'ylabel' );

Then you need to reset it based on the string from your original plot. That's what the first attribute is below. The next two change the font size to 9 and the font to New Century Schoolbook to match the other properties.

>> xlabel( get( holderX , 'String' ) ,...
'FontSize' , 9 ,...
'FontName' , 'NewCenturySchoolBook');
>> ylabel( get( holderY , 'String' ) ,...
'FontSize' , 9 ,...
'FontName' , 'NewCenturySchoolBook');

And there's so much more you can do
Using a template like this, I add gridlines in a light grey, but still have axes that are plotted in black (which is somewhat tricky to do). Also, you can add a format for you legend to make sure you have the right font and font size. You can do two Y-axis plots fairly easily with this and do color coding, etc etc.

The last step: Exporting
So now you have your beautiful plot and you need to save it. Since you're running this in M-files anyway, you might as well save the figure via the M-file as well. I export everything to PNG (portable network graphics) which is good for bringing it into Powerpoint. For papers, I use EPS figures with is a vector format. The two commands I use are based on print which prints the current figure.

>> print -r600 -dpng -loose filename.png
>> print -r600 -depsc -loose filename.eps

-r600 makes sure I have 600 DPI on the figures. -dpng/-depsc are the switches for which print driver to use. Matlab has both by default. -loose is very important. Don't forget that. That ensures the paper size and position that you specified in the beginning will be used for the bounding box. That's crucial for importing EPS figures and working with LaTeX. The last bit is the filename.

There you have it. It's a basic template but it works. If you have any questions or want some more tips on Matlab plotting, let me know.



Wednesday, March 9, 2011

Templates, Powerpoint Tips/Tricks (Part 2)

Yesterday, I discussed how typesetting your thesis and journal publications in LaTeX can make your work look much more professional than anything thrown together in MS Word. But there are instances (like my current one), where you have no choice but to use MS Word. This is either because you must submit it in *.doc format or because you need to work with track changes and things like that. If you’re working with MS Word and you need to trade text and figures with a colleague, then you’re probably going to use PowerPoint to make your figures. Below I’ve outlined a few steps that I take when making PowerPoint figures for documents to make them look professional, at least as professional as raster graphics can look.

1. Scale your figure right from the start
Typically, you know your size constraint right from the start. There’s nothing more annoying than resizing your figure, changing all of your font sizes on the fly. If you’re writing a two-column journal article, you probably have 3 inches of width or about 8.3 cm to play with. For single column journals (like Optics Express), the columns are a little wider 5.3”/13.3 cm. Each university thesis template varies but you generally have more space than that.

Start your figure by building a box a few inches tall with the maximum width allowable by your intended publication. In PPT, go to properties and check to make sure your set your figure width in inches (or cm). When drawing your figure, everything must fit inside that box. If you go outsides of the box, you have to resize on the fly, which screws up your text sizes. This gives you and idea of what you can fit within one column and if you need to make a figure that spans two columns. Remember, you can always go taller (to a point), so think about your figure layout and if you can make it taller than wider, as necessary.

2. Set your fonts and font sizes to match the template
Once you have your maximum box size, it’s now time to put something in that box. Most figures have some text, which must conform to publications standards. Probably, your text shouldn’t be smaller than 9 pt or 10 pt font and you should select a font that closely matches the main text font. Maybe I’m picky, but seeing a Times text font with figure labels in Arial just really stands out to me. This is especially the case when you can tell there was some effort put forth to make a good looking figure.

With the outline box and the right size fonts, you should have a better idea of how your figure needs to be displayed without making things too crowded.

3. Remove textbox borders in PowerPoint
A common problem when copying your figures from PPT into Word is the textboxes show up outside of your figures. You can see this below where the text box is extended outside of the outline.

When you have grouped your figure and copied it into your document, you get an overhang which makes your figure wider than desired. (FYI, Blogger scales the figure to "medium" so it doesn't exactly match the other two.)


To remove this, Right click on the Textbox, go to Format Textbox. Under the Textbox heading, make all of the internal margins zeros. If you want, you can make this the default setting by Right clicking on the Textbox again and select Set Autoshape Defaults. All of your properties for this box (font, fontsize, linestyle, fillstyle, etc) will become the new default for PPT objects. Once the margins are zero, you can reduce the size of the box to make it just bounding the text. This will remove the overhang.


4. Import your figures as BMP, JPEG, PNG, or TIFF.
That means never use “MS powerpoint object” or “Windows Enhanced Metafile”. MS Office likes to link all of your documents which, in principle, would be great if it wasn’t so bloated. But Office products have a hard time staying open on their own, let alone when linked between different files. I always paste special and select either BMP, JPEG, PNG, or TIFF (depending on how my figure was saved). Also, make sure that figure is “in line with the text”. If you still have overlap or disappearing figures, make sure your line spacing for that figure is set to 1. If it’s set to “exactly” or “multiple”, your figure might appear under the text.

Tomorrow, I’ll discuss some Matlab templates for figures. Do you have any additional tips for drawing figures in PPT? Comments?

Tuesday, March 8, 2011

Templates, Because MS Word Makes it Hard Enough (Part 1)

Yesterday, Cherish the Scientist (@mareserinitatis) was kind enough to indulge my twitter (@profgears) rant about how I hate MS Word. It all started when I had to review a paper for a conference proceedings and the only template they offered was either *.doc or *.docx. NewPhD, just starting out, has a brand new laptop with Office 2007 on it. Meanwhile, I have the 4 year old tank laptop with lowly 2003 on it.

And MS, in their infinite wisdom, decided to change their proprietary format, so converting back between *.docx and *.doc destroys any formatting you thought you might have done. Now, I'm not going to keep ranting about this (at least for this post), but rather, I'm going to spell out how students writing their first publication should approach things like pictures, figures, and graphs.

A few days ago, I post about Advisor-Advisee Expectations, which included things like making sure to communicate, to respond rapidly to emails, etc etc. One of the things I forgot to add for students to do is Learn Compatible Software and one of the things I will teach them is How to Make Templates. I'll tackle the software stuff first.

One of the best things I've learned during my PhD studies is "if it looks professional, people will treat it professionally". This is very important for two aspects, namely written work (thesis and papers) and for presentations. If you want to make professional documents, the best way to go IMHO is with LaTeX. Latex is an open source typesetting system for preparing professional documents. I use the MiKTeX distribution. It has a high learning curve but once you get the hang of it, it makes everything easier. LaTeX is something that I would strongly advise any student starting out to learn. I know it seems crazy with all the other stuff you have to do, but once you start, and your peers start, you'll be able to help each other and rapidly climb the learning curve.

For large documents, the content and the format are largely independent. For instance, once you make your thesis template, you'll never have to change it. If you add more content, you just recompile the document and it's done. And, most journals and universities have LaTeX templates for their publications. In those cases, you don't even have to make the template, you just add content. I watched DrWife bitch and moan about MSWord changing fonts, section headings, chapter spacings, you name it while she was writing her thesis. Everything in MSWord is linked and you have no control over that. In LaTeX, everything is still linked, but you have full control over it. Fonts and Sections headings don't change because of the moon rise. Also, the files are a lot smaller, so you don't have to worry about it crashing.

Another reason why LaTeX is great is because it gets you making *.EPS (encapsulated postscript) pictures. Just google vector graphics or check out the wikipedia page. This is the real reason why I wanted to use Latex. I wanted my figures to look professional and be resizable with issues. That's really useful for transferring journal figures into presentations, which need to be scaled larger.

Over the next few days, I'll talk about how I set up templates and what programs I work with to make figures and drawings for publications.




Monday, March 7, 2011

The Rite of Passage

Over at Engineer Blogs, they've had a theme week, focusing on their favorite classes. I thought I'd chime in and tell you about the most difficult but decidedly the best class at UGU.

Junior Design.

It's not really a class, more like a Rite of Passage. At UGU they have four design classes in the UG ME curriculum and three lab classes. Nothing can quite compare to Junior Design. Right in the middle of hell semester with Thermo, Fluids, Materials, and a Hard Lab Class sits the most difficult class in the curriculum.

Have I built it up enough?

Basically, it combines everything you've done up until that point. You've had all this theory (and some machine shop stuff) and now you've got to do real engineering. The tasks for the class all center around building a robot/vehicle of some sorts. Mine was to build a vehicle to drive over an obstacle course and deploy a bridge to hold a weight 10 times heavier than your vehicle. Alone the way, you had to climb a 30 degree incline. Oh, and you only get 4 AA's to do it. And you vehicle has to fit in a specified shoebox-like volume.

You have to work in groups, build your own controls and electronics, and do all of your own machining. Oh, and there's a written portion to this class as well with weekly lectures, reports due throughout the semester, and three presentations to give.

You have to back up all of your design decisions with calculations proving it will work. You have to make your drawings with tolerances. You have to calculate the power needed to propel your vehicle. You have to design your electronics for controlling your vehicle. And you have to work together as a group, which is a lot harder that it seems.

When you're going through it, it is total hell. When it's over, you really appreciate it and even miss it. Because it gives you your first taste (at least in my case) of real engineering.

Friday, March 4, 2011

Office Artwork


I fount it! Demotivational poster for my future office at SnowU! What do you think? Nice and subtle right?

Thursday, March 3, 2011

Advisor-Advisee Expectations

A few days ago, I posted about Submitting it Anyway, which was a dig at advisors who take forever to give comments on papers. Or in my case, take forever to the paper and say "I have no idea what's going on but it looks good. Submit it".

If I take a step back, that's a somewhat terrible relationship to have with your advisor. That's really good way to sow dissension amongst the minions. Students don't want to work for you. You appear (as their advisor) to not give a damn because you're some really uber busy professor. That's why when I posted about my research group and number of students, I didn't think having more than 4 or 5 students was worth it. With the downward spiraling of academic funding, I don't think it's easier to maintain more than that. You're too focused on funding rather than your students, your teaching, and your research.

Later tonight, I have a presentation over the interwebs for first year grad students at SnowU who are looking for an advisor. In this presentation (and in the future), I lay out what I expect from students and what they should expect from me. If there's a discord in the future, then we should both be adults about it and discuss it to make things right. Miss MSE's comment on my post that she had to involve her department chair and graduate coordinator in her advisor's lack of involvement is very unfortunate. I'm speculating (and you can tell me if I'm wrong) that if Miss MSE's advisor was approachable and available, that they could have discussed this issue to iron out some kinks.

Below are the main points that I want to get across to first year students looking for an advisor. They should know what their advisor expects from them right from the start and they should know what to expect from their advisor.

As a Grad Student, I expect you to...
  • Show up, be diligent, be willing to try new/odd experiments, be creative
  • Treat this like a job. When you have your PhD, you'll have to anyway
  • Get comfortable in the lab, you'll be there often
  • Write journal papers and attend conferences (it helps both of us)
  • Present your research regularly, both internally and externally.
  • Support your colleagues as needed
  • Not be afraid to ask for help from myself or any of your colleagues. We should be willing to say I don't know
As a tradeoff, you will learn a ton of things along the way, such as...
  • Lab Skillz. When you walk into any lab in the future, you will feel comfortable
  • Multi-disciplinary approach to problem solving. See that soldering iron? It works for mechanical engineers, optical engineers, physicists, just about anyone.
  • How to write and review journal papers, critique your work, write tactful answers to dumb reviewers
  • To give presentations where no one will be asleep
  • To be confident about your research and your abilities
  • Enough knowledge to give you a sizable base for a career in _______
But you should have expectations from me. As your advisor, I will strive to...
  • Answer your emails in a timely fashion
  • Show up in the lab (frequently!, daily?!)
  • Help you transition to be an autonomous researcher
  • Work with you to achieve your career goals, whether they're in industry, academia, or national labs
  • Get you connected in our greater research community
  • Be available, approachable, and reasonable.
If, for any reason, neither of us are living up to this, then we should be able to discuss it like adults and come to a suitable conclusion.

Wednesday, March 2, 2011

To beard or not to beard?

DrWife and I have recently been having discussions about appropriate working attire and grooming for new faculty members. For the past few years, I have generally kept my hair from very short to none at all. While this is very easy from a maintenance perspective, DrWife says this could make me less approachable for students because I look more intimidating. So, I have somewhat agreed to at least start my new position with quasi-normal guy hair. While I am pretty much set on that, I am now in the process of asking myself the age old question which every male professor asks at some point.

To beard or not to beard?

Do I want to look like just another engineering prof? You know the look. Non-matching sport jackets and slacks. Terrible ties (if any). Short sleeve button down shirts. Unkempt hair. And, most importantly, a huge bushy beard?

Or should I go with the look of a modern engineering prof. Clean-cut, business casual attire (no pleats!). Rocks a nice tie when needed. Iphone in one hand to stay connected.

Ok, so it’s probably not as generic as that. And it’s not that I’m trying for some hipster or post modern look. I guess I’m basically asking a question that I’ve heard a lot from women in a similar situation. How should I appear where they will take me seriously but I can still be myself? Beard, no beard, hair, no hair, that makes no difference to me. Hell, I used to have a blue mohawk about 6 years ago. But should I appear as a prof to be taken seriously or should I appear modern to not get thrown into the “dinosaur” category.

I’m only a few years older than the new grad students. I don’t want to be mistaken as some kid in over their head (that discussion is for another day) but I also don’t consider myself in the dinosaur prof category either. Or am I just thinking about it too hard because the students don’t give a damn as long as they pass the class?

Tuesday, March 1, 2011

Submit it anyway

I’m tired of hearing about poor graduate students whose advisors don’t take the time look over their papers or don’t give timely comments on their work. If it’s about to be submitted for a journal, then it should be important for the advisor and they have an obligation to look at it and give extensive comments in a timely fashion. If your advisor is failing to do that, then they’re doing a bad job of advising in my opinion.

Contrary to anything you might hear otherwise, all authors on a paper are treated equally even though some think they only have "management/guidance" roles. All authors should know the research and should be willing to help. More importantly, all authors get the same amount of credit no matter how much work they individual contributed. So if you are working on a paper and feel like someone's not contributing their part, then say so. If you think you've got a good start, just say so. Publishing helps all authors equally so we, as co-authors, should be willing to write some of the work.

Let’s take a paper with 5 authors on it. The breakdown is usually as follows:
  • Author 1: Main author, did most of the writing and research. Can explain the technical aspects, chug through math, models, data, etc, but has limited scope for the overall picture.
  • Author 2: Generally the main author’s partner in the lab, immediate mentor, or fellow PhD student who helped gather/analyze data. Helped with some of the writing.
  • Authors 3 & 4: These two Authors contributed some technical aspects and offered advice. If you’re ever looking for these two Authors, my money is on them not being in the lab.
  • Author 5: Often the main advisor, grant getting, knows the overall plan for the project but (all too often) doesn’t know the technical details.

Officially though, everyone is equally counted as a co-author on the paper, and that’s the aspect that I disagree with. If Authors 3 and 4 only gave a little bit of advice, then thank them in the acknowledgements. If Authors 1 and 2 have kicked the paper around for a while, Author 5 should have the decency to comment within a few days. Otherwise remove their name! I think it’s fair for you (as the main author) to send the work and say I need comments within X number of days or a very good reason why you can’t do that, otherwise I’ll just remove your name and submit it anyway.

You may be a graduate student but this is why we have peer review. There’s no reason why you need a professor’s name on the paper to get it published. In certain instances it helps. But if your work is good enough, then go for it. If it passes peer review, then it’s good enough and then maybe your advisor will take notice that you’re not messing around and you’re not just a lab minion.