How not to beemind a thesis, a post mortem

What this is about

This is a continuation from the discussion in https://forum.beeminder.com/t/some-long-standing-bugs-i-would-like-to-see-resolved/

As per the title: Strictly speaking it’s not a thesis, however I sort of turned it into one and people usually don’t know what a master’s project is and even professors occasionally confuse it with the master thesis so let’s go with that for now.
It’s also not a post mortem, since the project is not quite done yet. Almost. But not completely.

Speaking of this “project”: It’s been long overdue and I came to Beeminder specifically to finish it and I have poured many more hours into it than the 300 required by my university. In fact it grew so big it was suggested to me to submit it to a scientific conference.
It’s about lossy compression of digital photos, RAW files to be exact. It uses a method called SPIHT and I’m doing about 33% better than the only competitor, which is Adobe with their lossy DNG format.
It consists of a prototypical implementation and an accompanying documentation.

How it started

I began by beeminding hours¹ I put into the project. Six hours a day, every day, because “weekends off” was not available in the free tier and the whole beeminder philosophy seemed to be to build up buffer so in my head this amounted to 8hrs Mo-Fr and relaxation on the weekends.
It also brought me to the question “What counts as time spent on the project?”. One answer to this on the extreme end would be “Only time in which I was laser focussed counts”, so no bathroom breaks or short coffee breaks for instance. But I decided that’s too hardcore and instead went with how tracking time at your day job works.

It also begged the question whether the meta-time (read: Time spent messing with beeminder.com and the forums, fixing my computer that I require for the project, updating it, etc.) would count towards it and since I went with the workplace analogy this definitely included these times as well.

And this did work quite well for a good while. Except it got me into the very stupid spot that my social life was instantly reduced to 0. Because I don’t do buffers. After having done the bare minimum of 6hrs a day I could not get myself to do any more just to build up buffer so I would have time to spare for friends, for relaxation on the weekend or anything like that. That was bad. And one major thing that was very beeminder-esque that did not work for me at all.

It did however convey a feeling of urgency and the impeding doom that was the sword of Damocles hanging above my head and I did pour a lot of hours into the project as a result of that.

But these many hours didn’t move it nearly as much in the direction I needed it to go. Instead I would do other things that were closely related to the project but sucked slightly less than having to write page after page. I lost focus.

So eventually I set up another goal², this time integrating Trello and making it so I would have to reduce the number of cards (read: TODOs) in there to 0 by some time. And this kept me quite focussed. It worked quite well actually.

This helped a lot putting me back on track. But once archived I really never seriously set up a new iteration of that. I meant to but it never happened. Procrastination showed its ugly face and Beeminder was no help in that regard.

It does however count towards my time on the goal so discussing beeminder bugs does very much make it so I don’t actually have to do the hard project work.
It’s also the reason why I was very active in the forums in the first few months after having signed up.

It became a game of making the beeminder dashboard happy more than moving the project forward.

Back to beeminder mechanics that did not work for me at all: The 7 days akrasia horizon. Just no good at all for me. One day or maybe two days horizon, sure. But planning 7 days ahead? To the degree and level of detail required by beeminder? No way. There is too many variables in my life right now. And too much living in the moment by me.

This is also why weaselproofing is not an option. Not that I would be considering myself to be a weasel. There was a single instance (and @shanaqui caught it) where I once successfully talked myself into a derailment being not legit where when I looked back at it the next day I changed my opinion about it.
I never fudged any data points.
I would have appreciated different flavours of weaselproofing that would lock down different aspects of the goal, alas beeminder only knows the one. There’s loop holes in the system and eventually you figure them out. Some at least. Enough in any case.

There is no good metric

A central problem with beeminding the project and its progress is that it is a very creative endeavour and there is no simple metric like “steps per day” that would reflect it accurately enough.
Of course there is resources talking about making beeminder fit into that oddly shaped hole and I tried a few.
One documented strategy was to beemind pomodoros and I did (and am doing) this with some degree of success.
I’m not a big fan of it, it requires juggling yet another app, it requires remembering to turn the timer on and off and it adds another source of frustration because even the supposedly best pomodoro tracking app is full of bugs that cause data loss. And it’s very stupid to be asked by beeminder how many pomodoros you did only to find out the app deleted that info because writing concurrent systems is hard. It really felt like I was fighting the system.

Also I perceived the 25/5/15 minutes rhythm to not be a particularly good fit for me. I am clearly not the only one (see: tocks). But I had set up the goal so it would count the number of pomodoros rather than the time covered by time. Mostly because it was way less hassle³ to track that. And whilst I could have modified it to model minutes pomodoro-ed instead of the number of pomodoros I did not do it. Partly for it would mean more hassle, partly because I procrastinated it.

Early Bird

Speaking of procrastination: I would of course delay working on my project every day to the last possible minute. In order to combat that I introduced yet another goal for making me do at least part of the work before some more reasonable time.
And it had a great effect. It also added even more hassle to the overall time tracking and keeping beeminder happy.
Which is one of the reasons this, too, is retired now.
Oh but you’re not the first to run into this problem, I hear you say. And yes of course I wasn’t. And I tried to do water falls. But I would forget the new and different deadlines. For which I found a solution, too.
There was a reason for my previous deadline(s) being so late, though. As mentioned before my day to day life is not exactly well planned and laid out and the late deadlines helped to accommodating that.
There is also more downsides to using waterfalls and if recent beemails are any indication I am not alone with that impression.

Draft

As stated there is no good metric for this project in its entirety. The text production part however was a better fit for beeminding. I made another goal, used URLMinder, put LaTeX text files on Dropbox and typed away. 400 words a day initially.
Eventually the project did progress to a point where there was enough documentation written that it needed to be looked through, edited, partially re-written and so on. this I aspired to use the Draft integration and made a goal for that, too.
It died very quickly. First, measuring actual word count in a latex document is – while not impossible – a lot more involved than simply throwing your .tex files on some cloud storage and using the words in there as metric. There is special commands for formatting, for inserting pictures, etc. And I wanted a plain text representation to use in Draft. I don’t recall why I wanted that. It’s not hard to do, you can do that using pandoc. But it did not automate itself and so the goal fell victim to my procrastination.

Somehow I managed to make progress on it anyway albeit at an abysmally slow pace. Eventually I gave it to friends to read through and I got back a lot of feedback and now I’m procrastinating implementing the feedback because I did all the trivial stuff already and am now faced with shortcomings in my text that require more involved changes than adding a comma here and there.

Where to go from here

I signed up about a year ago with the intention that with Beeminder I will surely and easily finish my project within a few weeks. Needless to say this did not happen. Not even close to it.
Instead I paid over $400 in derailments and subscription and was surprised and shocked when I learned that.
The project is still not done. Almost, though, but that is a state it has remained in for quite a while now.
Speaking of which: I have of course not just noticed today that the project’s progression leaves a lot to be desired and I have wanted to employ the services of https://bossasaservice.life for a while now, but despite being on their waiting list for months there was still no vacant spot. I think they would have helped quite a lot.

Of course there are other, similar services but a) no other came so highly praised and b) being on their waiting list allowed my procrastinating mind to not further pursue the idea since it had the alibi of having done its part by signing up.

So here I am. One year later. Project still not done. And I am “entertaining” the idea of quitting Beeminder altogether. I never set out to pour almost half a thousand bucks into this.
Of course it’s not quite this simple. There have been other goals beside my project related ones.
Including one that got me to work at my day job more often⁴. Because I wouldn’t go there since I had to finish my project and it was almost done, right?
Also there has been the very nice sponsoring of some hardware so, as I said, it’s not quite this one dimensional.

I’m not saying Beeminder is not working. I’m saying it’s not working for me. Not for what I’m needing it for.

¹ it’s archived right now, the graph shows nothing meaningful and Beeminder won’t let me adjust it while archived. I don’t get why it being archived should affect that but so is the way of the bee.

² It is now archived, too. Towards the end a number of other TODOs have piled up that were more relevant than the few that were left that I had planned weeks if not months ago.

³ It was also a workaround for the buggy and unreliable stopwatch in the beeminder iOS app. But in the end it just moved the pain to a different spot. Writing well behaving software is hard.

⁴ Just in case this sounds weird: My day job is super flexible about when and how much I work.

6 Likes

A couple of notes, trying to be of some help

  • Sounds like you’re overcommitted (a day job and a masters-level thesis) which can easily create a vicious circle of procrastination and lack of focus. Which is how it ended up that you justify reporting Beeminder bugs as part of your project. Or spending time creating a Beeminder e-ink dashboard! :slight_smile:
  • A regular review of what your status is, if you’re achieving your goals and if you’re on the right path can help keep your priorities straight. Beeminder will not necessarily help you with that if the goals/metrics are not correctly set
  • Creating multiple goals/metrics is perfectly fine (if not required for success), as well as dropping goals and creating new ones. The point is to move forward by any means that gets you to do to the work, and not to keep a Beeminder goal in the green
  • Tools: RescueTime will cut off access to distracting sites and report time spent to Beeminder without any manual actions. You can also beemind time spent on separate categories of apps really easy. If you also need to track non-computer time, you can easily track offline time. As for pomodoros, I use PomoDone (https://pomodoneapp.com/) which also integrates with Beeminder via Zapier and has adjustable time settings (if you don’t like the 25’ default)
  • It’s not about the tools: Achieving one’s goals is more about setting a set of priorities and realistic outcomes, and keeping these updated through a honest review process, rather having a magic software get you do to the stuff you want to do.

Hope any of this helps somehow :slight_smile:

5 Likes

Interesting seeing your peri-post-mortem of beeminding your thesis; thanks for sharing it!

I beeminded my thesis (phd thesis, in my case) with quite a bit of success, but looking at your pitfalls, I think a lot of that success was because I already time-track all my time, so i already had both a standard method of distinguishing work-work from make-work, and was used to granularity. I did, in fact, exclude bathroom breaks from my beeminded time worked, as well as a lot of other “work-like” things, and I think that helped me actually do the things that moved me forward.

Also, I had an actual hard deadline, as in “I have to graduate by this date because my PI is leaving the university”. That helped enormously, especially after I got a job, pending graduation. Honestly, if you’re having a hard time finishing your project, the best advice I could offer would be to start job hunting and accept a job with a set start date. Bonus: job hunting is so terrible, you may end up procrastinating by writing your thesis.

I also had MUCH, MUCH lower standards for myself; I don’t think I ever set my work slope above 5 hours a day (I set weekends off), and I believe it was 4 hours/day for a good chunk of the time. 8 hours a day would have driven me into the ground within a week, if not sooner. Having actually tracked my working time in great detail, I’m extremely aware of what I’m not capable of, and writing a thesis is hard, unrewarding work.

In case you want to see my graph, it’s at https://www.beeminder.com/lanthala/pomodoros. The time from the start of the goal in July 2016 until mid-Dec 2016 was when I was working on my thesis (the sudden peak and drop off in productivity is when I turned it in!); I kept using the goal for my paid work until Toggl integration was implemented. The graph tracks half-hours, so that I could get the joy of adding one to the goal every time I totaled another half hour of work, instead of having to wait until the end of the day, hence the name of “pomodoros”, even though I didn’t formally use the pomodoro system.

8 Likes

I relate so much with this. I often procrastinate from one project by working on another :smiley:

4 Likes

I should add that I do in fact have a job already and am working there couple hours a week. Which in fact had the opposite effect: I would go to work a lot because that was more pleasant than doing the master project and writing its documentation.

4 Likes

Time to dig out this thread! It is now the year 2020 and now that I am about to submit my Thesis/Master’s project any day now™ and thus closer than ever to ending my own self chosen quarantine¹ the rest of the world is in quarantine. Great!

Which is why I am also working remotely from home for my dayjob. It’s something I always wanted to try and omg AM I LOVING IT! I can fully engage, wear comfortable good sounding (open) headphones, tap with my fingers on the keyboard to the music, talk my thoughts out aloud which helps me focus immensely and there is no stupid commute!

In fact, and now we are closing the ark to this thread again, I love it so much that I use it more than ever to procrastinate working on what I need to do for university.

Arguably this is a lot “better” than watching YouTube all day long, but it’s not exactly what I set out to do either :smiley:

¹ I would just very hesitantly go out and have a life outside my flat before my work for university wasn’t done

4 Likes

Just found this thread and it’s awesome! so are you gonna be really famous as a compression wizard when it’s all done?

My question is why the title is how not to beemind a thesis. Seems like it’s been helpful and you’ve gotten a lot more done than you would without beeminder!

Getting stuff done is hard. Really, really hard. Beeminder helps somewhat, sometimes, but it isn’t a perfect solution and it takes a lot of work and management and trial-and-error to adapt it to whatever one’s situation is. So be careful you’re not comparing your progress to some unrealizable theoretical ideal where you’re doing it perfectly.

I’ve struggled with a lot of the same bee-limitations as well.

Also - BAAS may let you jump the waiting list, since you’re a Beeminder user. Did you write @manasvinik and ask?

4 Likes

Haha, thank you :slight_smile:
Compression wizard? Maybe an apprentice compression wizard :stuck_out_tongue:

Yeah, it wasn’t a complete failure. But I started with Beeminder thinking I’d be done with the project within a couple of weeks, maybe a two months. And certainly I didn’t think I’d be spending $400 on it.

Wait, that’s a thing? I had no idea!

2 Likes

Offer was here - hopefully it’s still valid:

Was that actually realistic though?

2 Likes

I guess a general pitfall is expecting Beeminder to do all of the work for you. That’s not going to happen. If the project is open-ended, needs creative insights and solutions to unforeseen problems, etc, you still have to solve all of these things, whether you use Beeminder or not. What Beeminder does is make sure that you actually sit down and thus have the opportunity to make steady progress, instead of procrastinating all day.

My strategy is that if I beemind “hours spent on the project”, I make sure to keep in mind that the beeminder goal covers only one necessary aspect for success (i.e. actually putting in the hours), but it will absolutely not be sufficient. It covers this necessary aspect really well though, and can potentially be worth hundreds or even thousands of dollars over the course of several months, even if it “just” makes me procrastinate one hour less per day.

It’s very tempting to set up a Beeminder goal that tracks the hours spent on the project and then confusing the datapoints in the graph with actual success.

The interesting question in your case would be the counterfactual “how would it have turned out had you not used Beeminder”? Hard to know for sure, of course.

9 Likes

As of yesterday 4pm UTC+2 I have handed in my Master’s project :slight_smile:

14 Likes

:100: :boom: :+1: :clap: :fireworks: :white_check_mark: :checkered_flag:

3 Likes

Congratulations!!! So exciting!!!

:clinking_glasses:

This is the new compression algorithm right?

1 Like

Thank you for this - this is a good thing to remember and helps me feel better about things.

2 Likes

The compression algorithm itself is not exactly new. SPIHT is from 1996. But what is new is that someone, me, is applying it to compress RAW photos from digital cameras. And this ends up being only 66% the size of what Adobe can do with their DNG format at the exact same quality. And that’s pretty sick :slight_smile:

3 Likes

Awesome!

3 Likes

Congratulations!

3 Likes