Tag Archives: blog post

Getting Your Head in the Game: Anti-Procrastination Tips

Procrastination. Almost all of us have to deal with it in some way, but when you’re working on a project where the only communication is long distance and you don’t have someone looking over your shoulder, it’s a situation that can get exacerbated. So here’s some tips for dealing with it.

  • Try and do things that put you in a ‘work-mode’ frame of mind. Sit yourself down in a place that you associate with work. So a desk rather than a more comfortable lounging chair, or perhaps a library rather than at home. If you’re working on the weekend, avoid wearing your pyjamas all day, this could put you into a ‘relax-mode’ frame of mind. I have some music that I tend to listen to while studying for school, so I listen to that while working too. Even using a particular writing implement: I’ve been advised to study with the same pen/pencil I’m going to write a test with. These little things can honestly help
  • Sunlight. Especially during the winter. Seasonal Affective Disorder affects a lot of people. Plus, having the extra light is better for your eyes
  • Schedule time. Put aside a couple hours of ‘class’ time a couple days a week dedicated to this. Put it in your calendar. Write it down. Tell people you will be busy then
  • Write out a detailed to-do list. What do you need to get done? When does it need to be done by? Just writing it out will help cement it in your head
  • Ask for help. Yes, you’re behind and asking simple questions is going to betray that. But not getting the help is only going to put you further behind and make you want to work even less. Swallow that pride! The mentors are awesome guys! They really want to help, they’re not going to be super harsh.
  • Related to this, hang around the IRC chat. That way the option to ask about stuff is always right there and it doesn’t seem like a big deal
  • It’s fine to try and find answers on your own, but keep an eye on how long you’re spending on this. If it’s taking more than an hour, it’s probably time to talk to someone
  • Consider getting the people around you to help. If you concentrate better while working around other people, get a group of friends together to work with. Maybe get family members to nag you.
  • Try to be aware of why you might procrastinate and what your habits are. If you know what you’re likely to do, you can try to combat it. I know that one of the hardest steps for me is to just get started. Once I’ve begun, I can get into the zone. So I tell myself things like ‘well just make this one small change that’s super easy and go from there’. Then before I know it, an hour has gone by and lots has gotten done!

Blog Post: Yuri

Hi, I’m Yuri, first-year of master’s course, and studying in Dept. of Creative Informatics.

Before the start of this course, I studied and work on PHP and JavaScript (using jQuery), but probably, I should learn Python, Django and knowledge of database such as SQL because I’m not familiar with them.

So, I didn’t understand what I don’t understand, It’s serious problem for me because I have to put in plenty of time for it and have less time for my hobby such as videogame and band performance and so on.

…Frankly, I waited for chance to run away! On a serious note, new students need more warm-up period before starting course, I think they should do Django tutorial and get foundation for an understanding of Python.

[My part “Trophy Case”]

My part is Trophy Case in this course, it’s same project with Hiroki.

Our work is “Adding Trophy system to ReviewBoard”.

Trophy system likes videogame’s achievement system, such as Trophy system on PS3 and Achievement system on Xbox360.

[My work]

My work is show that reviewboard user’s trophies on user’s page, which is webpage on reviewboard for displaying user’s information.

In a word, Hiroki added trophy model to reviewboard’s database, then I added function for reading and showing them.

In addition I added number of user’s trophies to user_infobox, which is showed when holding cursor over user’s name.


I’m working on adding trophy_infobox.

It shows trophies’ information when holding your cursor over trophy’s name on user’s page.

UCOSP Blog Post

My experience with UCOSP has been very fulfilling thus far. I’ve met a lot of great people, and have enjoyed working on the Review Board project more than I ever would have expected. One of my favourite aspects of the program is the feeling that your contributions are significant; The code you write is distributed to and executed by real users. This is in stark contrast to the usual work which is done in university.

UCOSP gives you the chance to work on some really interesting projects, and I’d like to give on overview of what I’ve been working on thus far.

Review Bot:

The main project I’ve taken on for UCOSP is something I’ve dubbed “Review Bot”. The goal of Review Bot is to automatically execute static analysis tools on code that has been posted for review on Review Board. Basically, it will review code using external programs, and then post any issues it finds to Review Board.

Thinking through the design, and receiving feedback from the community looking to automate static analysis using Review Board, I came up with a plan of attack. My initial aspirations for Review Bot are illustrated below:

Review Bot of my dreams

How Review Bot was envisioned - Warning: Imagination Required

Yeah, that’s a code reviewing, go-go-gadget armed robot with a jet-pack. It reviews code written in any language, and can solve the halting problem. I considered allowing it to review its own code, but the risk of it becoming sentient and enslaving the human race was too great. But in all seriousness, I planned to make a highly versatile code reviewing bot, which other developers could extend to support the static analysis tools of their liking.

However, it can be hard to properly scope a project when dealing with an unfamiliar code base. I quickly realised this as I ventured deeper into Review Board’s API and extension support. Once I’d begun working through the implementation of Review Bot, it became apparent that my project was going to be a lot of work! Review Board lacked some of the features necessary to support the Review Bot I had envisioned. My first order of business was to fix this; I set out to extend the Web API and expand the feature set of the extension system.

Review Board’s extension system is powerful, young, and light in the documentation department. The lack of online documentation was a little worrisome at first, but prior developers had commented their code very well. Combine this with some very knowledgeable and helpful mentors, and hacking on extensions proved to be a blast. Even though Review Board is a mature code base, I was able to work on something fresh and exciting; you don’t have to worry about backwards compatibility when the feature isn’t in use yet. My time spent with the extension system has given me the expertise needed to document it, and my beginner’s guide for future developers is nearing completion.

All this related development has kept Review Bot on the back-burner for a lot of the term. To give you an idea of Review Bot’s current state, here is an artists rendering of the progress I’ve made:

What Review Bot can accomplish at the moment

What Review Bot can accomplish at the moment

All right, I might be selling myself a little short with that picture. While it is true that Review Bot can’t actually analyse any code yet, progress should be quick now that Review Board has the features needed to support it. By the end of the term Review Bot should be automatically analysing Python code with the pep8 style checker. Some features, such as allowing tools to analyse the entire code base and not just the modified files, had to be dropped – but I’m still happy with how the final product will look.

In Closing:

I really can’t stress how happy I am to be participating in this program, and I recommend it to any students given the opportunity to participate. I’d like to thank the UCOSP steering committee for organizing everything.  Also, a very big thank you to the Review Board mentors: Christian Hammond, David Trowbridge, and Mike Conley. These guys have made this experience awesome, and I really appreciate all the time and effort they have committed to the program.

Thanks for bearing with my artistic “ability”,

Steven MacLeod

UCOSP Blog Post – October 16th, 2011

The first month of working on Review Board has been a great experience. I started working on a new feature that reduces database storage at the code sprint. I came out of the code sprint with a working version of the feature and posted it on Review Board for review. Students and mentors looked over my code and gave me tips on coding style, naming conventions, usability issues, and some other things. I also found a bug that Christian and I worked on a solution to, and implemented this in my code. I now have 6 revisions of this feature posted, and am working on the final revision. After receiving feedback, I really understand how important code review is. Code review greatly increases code quality. It helps the coder pick up on common practices and learn from their mistakes. It also helps the reviewer better understand the code base, and they can learn how other people solve problems. I will definitely use code review in future projects I work on.

Every week, students and mentors get together in our IRC chat room to discuss progress, ask questions, and share a few laughs. This gets everyone on the same page and helps students keep progressive with their projects. Mentors are also in IRC throughout the week if questions or problems arise between meetings. Other methods of contact are through the Review Board UCOSP Google Group, where weekly status reports and other important information is shared. Lastly, the Review Board Students Blog is used to post status reports, meeting minutes, developer tips and tricks, and bi-weekly blog posts (like this one).

I am thrilled to be a student on the Review Board UCOSP project. I am learning essential information about distributed development, open source, and web development (among other things) which I will undoubtedly use throughout my career. I’m lucky to be part of UCOSP and excited to continue working on Review Board.