What are you working on? December 2011

by jsalvatier1 min read13th Dec 2011117 comments

12

Personal Blog

This is the sixth bimonthly 'What are you working On?' thread. Previous threads are here. So here's the question:

What are you working on? 

Here are some guidelines:

  • Focus on projects that you have recently made progress on, not projects that you're thinking about doing but haven't started.
  • Why this project and not others? Mention reasons why you're doing the project and/or why others should contribute to your project (if applicable).
  • Talk about your goals for the project.
  • Any kind of project is fair game: personal improvement, research project, art project, whatever.
  • Link to your work if it's linkable.

117 comments, sorted by Highlighting new comments since Today at 12:43 PM
New Comment
Some comments are truncated due to high volume. (⌘F to expand all)Change truncation settings

My wife and I are working on translating HPMoR into Polish. Tonight she'll finish the first draft of chapter 4, and I'm about to finish editing the final version of chapter 3. We plan to publish it when we have 5 chapters ready.

0jsalvatier10yNice!

I was accepted to this developer bootcamp (Ruby on Rails + general lifestyle / job-finding bootcamp). (Here is part of my application, in response to a question about my experience tinkering.) So, I'm working on moving to the SF Bay area (program will be held somewhere in SoMa starting early Feb 2012) and general transition preparation (background knowledge + planning the move). Pointers for places to stay ("LW as craigslist") are welcome.

And before you ask, yes I can learn programming and software development on my own, but not nearly as fast as if I had someone side-by-side directing me, nor nearly as career-helping without someone to make connections. (Even with the recent "hack Less Wrong" guides, and other websites I found way too much inferential distance.) I believe that it will allow me significant professional and personal progress in being able to do what I've always wanted to

As usual, once I master it, I plan to use my explanatory skills to reduce the barriers to entry for others.

I will probably be taking an indefinite leave of absence from work.

Not too late to back out at minimal cost, so feel free to convince me not to go through with it.

(Thanks to Frank Adamek and Will Ryan for pointing me to the opportunity.)

9Daniel_Burfoot10yI am interested in why you think transitioning to a career as a software developer is going to improve your life. I fear you may be a victim of the "grass is greener" bias. I think programming is great, but I'm not sure I'd choose it as a profession if given the choice to do over again. And I definitely wouldn't transition into it from another career path. I think most programmers are undercompensated relative to their talents (this is especially true if you adopt a definition of compensation that includes more than just money). Note that society considers it entirely reasonable to import large numbers of foreigners to fill the supposed "shortage" of IT professionals, thus undercutting the market value of native-born Americans. Perhaps it would be a good exercise to write up your reasons for making the switch and post it to LW. Often when one begins to write about an idea, one realizes that the idea involves problematic assumptions and arguments that seem good in far mode but fall apart upon concrete inspection. This would also give you some feedback from the community, which obviously includes many veteran programmers.
2SilasBarta10yThere are a lot of reasons, which I have been discussing on and off throughout my time on LW, and would take a while to compile and articulate. But on the matter of whether this is a "grass is greener" bias: I've been in aerospace engineering for almost seven years now, and the high point of any day for me is programming, on or off the job. I have very extensively seen the grass both on this side of the fence and the other, and I definitely do not want to be doing this for another ten years, even counting the status uplift I seem to get on telling people that I'm in aerospace engineering. Furthermore, what matters to me is the actual wage [1] I can get, not the relative theoretical amount that I'm being "underpaid". There is a huge chasm, at least with regard to where I am right now, between what I could theoretically get (assuming lots of connections and specific experience I don't have), and what I actually would get, given my present situation. So I do think it's worthwhile to compile my numerous specific reasons in a comment, but I don't think the concerns you have raised justify any fundamental reconsideration of this transition that would take priority over preparation for the program -- though if I get some free time, I will do as you have suggested. [1] please, no complaints about the distinction between "salary" and "income" and "wage" and "freelance income" ... I'm using "wage" in the economic sense, of payment for labor, irrespective of what form it takes.
1cousin_it10yWhat profession would you choose?
1Daniel_Burfoot10yI don't know exactly but it would probably involve business strategy. I would like to regard the economic landscape as a chessboard and have the wherewithal to move the pieces around.
8novalis10yI'm very, very curious to hear about your experience at the bootcamp, getting a job afterwards, and then doing that job. I've been a professional programmer for years, and I love it. I'm always trying to convince other people to quit their boring, useless jobs and spend their days actually building something. I also help interview programmers for jobs, and when I do, I often find huge gaps in knowledge, even among people who have programmed professionally and/or have an academic CS background. So I'm curious about how well programs like this teach the material, and whether they're worth the time/money.
9thomblake10yI'm curious what sorts of huge gaps in knowledge you encounter. I'm a professional programmer and I would like to know if I have any of them.
5novalis10yI pretty frequently ask the question "Name any algorithm -- it can be bubblesort, and tell me when you use it, how it works, and what its performance is." I would like this to be the start of a conversation where I drill down and hear how a candidate explains technical details. But more often than not (!) I get answers like, "I haven't thought about algorithms since school and I can't think of any now", or "oh, bubblesort -- yeah, that's the one where you split the list into two parts and then I can't really remember what happens next," or "how does my binary search perform? Well, it's better than a linear search, that's for sure!" I also ask people to explain database normalization -- most people give passable answers, but very few people can give good, concrete explanations, immediately. Steve Yegge [https://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions] goes into more detail about the sorts of gaps he sees. I tend to see less of these problems, perhaps because the algorithm question weeds them out first.
4ShardPhoenix10yTypical programmers don't remember these things because they're rarely relevant for typical enterprise software development*. If they're specifically important to what you're doing it may make sense to ask about them, but I don't think these kind of questions should be used just as some generalized "programming intelligence test". * DB normalization is more likely to be relevant than algorithms, but often the database already exists.
3novalis10yI'm only interested in hiring good programmers, rather than typical programmers.
1ShardPhoenix10yDo you also pay far above average wages? If not, you should be careful of what trade-offs you are making. If you demand above-average performance in some areas (eg algorithms), then you'll on average get below-average performance in other areas (for a fixed wage), at least to the extent that hiring markets are reasonably efficient.
5novalis10yWe offer above-average benefits, including one that is very difficult to others to compete with: we write almost entirely free and open source software.
3cousin_it10yI don't know much about the enterprise world. Which of the following sounds more true to you? a) Enterprise programming requires fewer skills, or a lower level of skills, than other kinds of programming; b) Enterprise programming has a separate skill ladder, and a good enterprise programmer has important skills that are unknown to most non-enterprise programmers.
3Nornagest10yI'd say it's a little of both. Enterprise programming below a fairly senior level doesn't demand much knowledge of algorithms, complexity theory, formal language theory, or most of the rest of academic CS; in a lot of jobs you can quite easily grind along for years without writing so much as a binary search. On the other hand, it does often demand knowledge of unusual tools and language features, enough flexibility to fit your head around arcane and poorly documented architecture, and above all the ability to understand and fix other people's crappy code -- something that academic CS does a very bad job of teaching. That's a fairly shallow skillset, but it is a broad one.
2cousin_it10yIs enterprise programming special in this regard? From the description it sounds like game developers, embedded developers etc. also have to face similar problems.
0Nornagest10yI wouldn't say any of those problems are unique to enterprise development, but enterprise might be the only major branch of software development where dealing with them well is the main skill needed for the job.
1ShardPhoenix10yThere's a bit of both. In favour of a), enterprise programmers are typically less enthusiastic than people from smaller companies, and also generally more narrowly specialized - they may deal with some small area of a larger system, where a startup employee has to be able to handle everything that comes their way. In favour of b), enterprise systems can have higher demands in terms of robustness (your bank going down is worse than twitter going down), scalability (most small companies haven't taken off in user numbers yet and probably never will), the amount of legacy code that needs to be read and dealt with, and the size and complexity of the existing code base and database(s), and the need for integration between a number of disparate systems managed by different teams.
3Bugmaster10yYes, but at some point, the knowledge becomes so basic that it should be considered part of basic CS literacy. By analogy, if you are a writer, you should know what similes are even if you aren't using them every day (to say nothing of things like commas). I personally consider binary search to be in this class of knowledge. It's one of the simplest (if not the simplest) divide-and-conquer algorithms, and if a person doesn't know whether it performs better than linear search and why, that tells me that the person lacks all kinds of other pieces of critical knowledge, as well.
0ShardPhoenix10yI'm not saying that knowing this stuff is completely unimportant, but rather than using knowledge of algorithms as a rough signal of someone's ability to do their (non-algorithms-related) job, it's better to measure it more directly.
3Bugmaster10yFirstly, how can we do that ? There's no way we can grant each candidate an evaluation period that lasts two or three monhts -- which is what it'd take to measure his performance directly. So, we need some heuristics. Secondly, "is the candidate CS-literate at all" is just the kind of heuristic that we can use for this. And, IMO knowing about binary search (not necessarily by name, especially if the candidate is not a native English speaker) is a great test for this heuristic. It's pretty much the CS equivalent of "can you form words into sentences".
0ShardPhoenix10yOne measure is to get them to do a small project (a few hours worth as most) of a similar (but simpler) nature to what your company does. That may not be perfect but it's a lot closer than whiteboard algorithms. IIRC research suggests that of all forms of job candidate evaluation, "work samples" such as this have the highest correlation with subsequent performance.
0Bugmaster10yIt's true, but that is still a significant investment of time, both on our parts and the applicants'. Most companies implement a two-stage filter: the phone screen, where they weed out a large portion (if not the majority) of the applicants, and the in-person interview, where the applicant might be asked to solve a programming problem like the one you mention. The "what is binary search and how does it work" type of questions are designed for the phone screen phase. IMO that is entirely appropriate, for the reasons I stated above.
0ShardPhoenix10yThe use of in-person whiteboard type questions is not what I mean at all - I mean a small but realistic project for the person to solve at home on their own time with their own tools. Maybe there is a necessity for a faster screen but I'm not convinced that that particular question is close to optimal for most hiring unless programming those kind of algorithms is something you actually do on a regular basis.
0thomblake10yIndeed - if a programmer didn't remember what 'binary search' means, I'd still expect them to be able to derive it on the spot from a rough description and then tell me exactly how it fares as compared to linear search.
0randombit10yI'm not so certain about that. I've seen a number of cases where people working on classic 'enterprise' systems struggled for a long time trying to solve problems that could have been neatly resolved using something that is considered 'theory' (like a dynamic programming solution, Lamport's vector clocks, or A* search) and after much trial and error ended up coming up with a ad hoc approach that mostly didn't blow up. If it's purely a web frontend to a database, sure, there isn't that much algorithmic complexity (that hasn't been implemented for you already), but usually there is more to it than that, and having the ability to look at a specific problem and say "You know what this is really an instance of (some already solved problem)" can be very valuable in programming (as in any other field of endeavor).
6Jayson_Virissimo10ySilasBarta, I am also retraining as a software developer (except, I had no previous programming experience). I am currently in the Phoenix Metro area, but maybe will can still coodinate.
1SilasBarta10yCool, what are you retraining from? My degree was in mechanical engineering and I currently work in aerospace.
0Jayson_Virissimo10yI've spent the last 4 years working in "Public Safety" (for the USG and then a city government), but studied political science (the statistics-heavy track) while I was in university. I'm currently making my way through a Java textbook, but will probably learn Ruby or Python for my second language.
5jsalvatier10yYay! Great work! "... but not nearly as fast as if I had someone side-by-side directing me, nor nearly as career-helping without someone to make connections. " True for so many things in life.
0XFrequentist10yMother of pearl that sounds awesome! Can't wait to hear if it lives up to its promise. ETA: Yes, I think you should go through with it.

In September I picked up programming. Following many people's recommendations I chose the Project Euler + Python combination. So far it seems to be quite addictive (and effective). I'm currently at 90 solved problems, although I'm starting to feel a bit out of my (rather non-deep) depth, and thus I consider temporarily switching to investigating PyGame for a while and coding remakes of simple old games, while getting ahold of several CS and coding textbooks.

You started 3 months ago and already did 90 Project Euler problems? Your future as a programmer is so bright you'll have to wear sunglasses.

5Kutta10yWow, thanks. That's probably the subjectively best feeling thing anyone's said to me in 2011 so far.
1jsalvatier10yCousin_it's comment references a great song [http://www.youtube.com/watch?v=8qrriKcwvlY].
1cousin_it10yWow, I'm such a nerd. I didn't even know that song existed! I stole the line from Philip Greenspun [http://philip.greenspun.com/panda/future] via Joel Spolsky [http://www.joelonsoftware.com/articles/fog0000000021.html] =)

I'm working on a game that will explain the concept of Truth to the player. (Similar to what Yudkowsky's "The Simple Truth" does.) It's going to be a 2D puzzle for PC/Mac/iOS/Android. I anticipate the development to take about 3 months, starting in January.

Furthermore, I will publish the game design process I used, thus starting a long series on how to become a better game designer. Some of the approaches I learned from lesswrong: six hats, do not start by proposing solutions, explore the problem space, experiment, etc...

9Emile10yI'm helping a bit on that. Apart from that, I'm putting together my notes and thoughts on morality, game theory and the emergence of social norms - I'd like to be able to model (program) simple situations to which moral rules / social norms are "solutions" the same way they are in real life. My thoughts on that are not completely clear yet, but there are several directions I could explore.
7[anonymous]10yDo you have other game programming experience? Odds are (prior; I have no evidence about you) you don't so I'm going to go ahead say it: tetris, breakout, asteroids, snake, invaders, pacman, and mario, before you try to do anything like a three month serious project. People seriously underestimate how much there is to learn from making simple well defined games. Correct me if you are experienced. EDIT: apparently you has the experience. you can disregard this. Leaving it up in case it helps someone.

He is experienced. He just finished a game: Girl with a Heart of

4[anonymous]10ythanks, edited to reflect
0Alexei10yHah, thanks John!
0Bugmaster10yWhich is an excellent game (thanks for pointing it out), despite its somewhat annoying UI (the reviews say it's worse on mobile devices). Regardless, if you haven't played it yet, you should.
0Alexei10yYup, I would recommend to anyone to play it on PC or Mac.
0Alexei10yYes, I've been making games for a long time, and I completely agree with you. In fact, I'll be documenting the whole process of creating my current game. I should have it up sometime this week (I hope). If you are interested, watch this link [http://bentspoongames.com/gd] (there is nothing there yet). Do you make/work on games yourself?
0[anonymous]10yThat's cool, I think we really do need more in-detail descriptions of the process. I'll watch. Yeah I've been getting into amateur game programming as a hobby. I've been wanting to do it for a long time. I just finished my spaceinvaders-type game. Next is pacman, then I'm going to let myself start to be creative (which is the whole point).
0Bugmaster10yIs there a website or a Kickstarter page where we can track your progress ? I'd quite like to play the game when it comes out.
2Alexei10yI'll be documenting the design of the game here [http://bentspoongames.com/gd]. Should add something there this week. Other than that, you can follow the company [http://bentspoongames.com] or myself [https://twitter.com/#!/AndreevAlexei] on Twitter.
1Bugmaster10yGreat, thanks ! I upvoted the parent comment, so that more people would see it. Currently, there's just a directory listing there, but that's to be expected. That said, do you welcome criticism of your existing game, "Girl With a Heart Of" from random strangers such as myself ? If so, where should I post it ? If not, that's totally understandable, and please forgive my presumption.
0Alexei10yBy all means, send me your comments: alexei.andreev@bentspoongames.com. Know that I've addressed a lot of comments already here [http://bentspoongames.com/blog/?p=146] and here [http://bentspoongames.com/blog/?p=140].

Last week, I finished Why Everyone Else Is a Hypocrite, as recommended by Kaj. I then read Blindsight immediately afterwards and I swear I didn't know the plot going in and that it was a coincidence.

For the last couple of months, I've worked on a rationalist My Little Pony fanfic: Friendship is Optimal. I hope to complete it by April. This is mostly to help improve my writing.

5Solvent10y...Please make this awesome.
3Emile10yEliezer recently added a "My Little Pony: Friendship is Science" snippet in his Omake Chapter [http://www.fanfiction.net/s/5782108/64/Harry_Potter_and_the_Methods_of_Rationality] .
0moshez9yWoo, I found who wrote it. I enjoyed reading it a lot. I liked that the "utopia" showed how utopic utopia can be while still showing the dangers in even slightly badly formed goals.

Starting work on a recursively self-improving seed AI. Not going to worry about Friendliness for now. Also, just solved time travel, so we'll see how that turns out two months ago.

6gwern10yJust a quick tip, Thom: when you go back in time to set up the final stable time loop with Kurisu, just bring along a damn can of tomato paste!

I am now reading ten different books. (I've also picked up 48 Laws of Power. My library card has been entrusted to a responsible party until I've finished all of these books.) I'm learning Python and Haskell via Learn Python the Hard Way and Learn You A Haskell, respectively.

A few months ago I did some transcripts for the Singularity Institute before suffering a huge bout of akrasia regarding such and stopping entirely, but I publicly commit to starting this again.

[-][anonymous]10y 9

I'm currently working on several FAQs/overviews.

I'm reading Benatar's Better Never To Have Been and I noticed that the actual arguments for categorical antinatalism aren't as strong as I thought and seem to hinge on either a pessimistic view of technological progress (which might well be justified) or confusions about identity and personhood. But I'm currently confused about the relevant philosophy, so I'm collecting the arguments and justifications, and will turn this basically into an antinatalism FAQ and reference. A lot of people seem to dismiss Benat... (read more)

0antigonus10yI don't think this is true. Benatar's position is that any being that ever suffers is harmed by being created. This is not something that technological progress is very likely to relieve. Or are you thinking of some sort of wireheading? That sounds like an interesting criticism.
1[anonymous]10yHe has two main arguments. One is the asymmetry, which is the better one, but it has weird assumptions about personhood - reasonable views either seem to suggest immediate suicide (if there is no continuity of self and future person-moments are thus brought into existence, you are harming future-you by living) or need to rely on consent, but I see no reason why consent can't be given without instantiating a person. (But I'm still confused about consent.) The other argument is based on low expected value of any life. Specifically, he argues that life is much worse than commonly thought (plausible) and addresses why common approaches can't justify the harm anyway. This relies on the assumption that the status quo will more-or-less continue. Justifiable, but unless he provides an argument to the contrary, transhumanists can still argue to you only need to engineer a world in which humans don't suffer (or even can't - the wireheading solution). If we all lived in a Post-Singularity Utopia, I'm sure his justifications for his specific comparison of harms and benefits would look much stranger to us.
0antigonus10yI'm not sure I remember his arguments relying on those assumptions in his asymmetry argument. Maybe he needs them to justify not committing suicide, but I thought the badness of suicide wasn't central to his thesis.

I'm chasing money, power, and romance. I'm getting a little bit of the first two. The third one, not so much. Previous post here.

In the two months since I started my side business, I've been putting all the money I can spare into it, plus all debt I can comfortably take on. Right now I'm into it for about 30% of my annual take-home. We've processed a couple hundred orders and the business has made an 18% return on that money. Excited to keep growing it.

I went through a renegotiation with my boss. He offered me a 16% raise, I turned it down, a couple of day... (read more)

Now I want to return to my project just so I can post it on here. Was that the plan?

1[anonymous]10yWhatever fights back against your akrasia.

I've started building a diode laser cavity (a box you shine a laser into which makes it have a more precise color), which means that I've been buying parts and spending lots of time in a machine shop. Most of what I'll be doing in the coming months will be using a mill to cut out various sized chunks of aluminum.

I've also been helping organize a conference.

Personal wise, I've been trying to pay attention to my mood and emotions more by keeping records.

[-][anonymous]10y 6

I'm working on a project involving computerized tomography, and I've made decent progress toward proving the first theorem that appears obvious from physical considerations. At this rate I expect the theorem to be done in four or five weeks; the machinery is all together, all that's left is to stitch the result.

However, those four to five weeks are going to be derailed for a moment. I'm also applying for funding next year, and writing my first research proposal is turning out to be harder than I expected. I'm also applying for summer funding to mentor at a... (read more)

Evangelizing calibrated-prediction tools to the Agile software community.

Why - I have several reasons for doing this. One is that some Agile discourse is tantalizingly close to (what looks to me like) Bayes-thinking, for instant frequent references to the "PDCA loop". On the other hand, there is (to my taste) little enthusiasm for actually putting some of the theses bandied about in the community to the test of experimental evidence.

So, having tried for myself the exercises of measuring my calibration on known but uncertain questions, of venturin... (read more)

[-][anonymous]10y 6

A gentle video introduction to Game theory is my weather balloon for a series of posts in which I hope to hand non-mathy people some low hanging fruit to chew on, that will help them rationality wise as well as perhaps getting together study groups for more demanding material.

First, I'm working on Textcelerator, which I recently released and am now incorporating feedback into and improving. It's a browser plugin for speed-reading on web sites, for Chrome and Firefox, using a modified version of rapid serial visual presentation.

Second, I'm starting a blog. Partially as a platform for talking about and draw attention to Textcelerator, but mostly to write about unrelated things. I have felt for quite some time that my mind has a lot of very-important knowledge which is being wasted because I don't write enough. More on that in a few days; there'll be substantial overlap with Less Wrong's topics of interest.

2Daniel_Burfoot10yI can verify as a relatively unbiased observer that this app is actually quite cool - everyone interested in increasing their productivity should try it out.
0Curiouskid10yI'm loving the textcelerator! Also, I've been feeling a bit insecure about my reading speed, but this thing says that I'm 400+ when I don't feel that I'm reading quickly so I'm pretty happy about that. Also, I think it's brilliant that it highlights words of negation (though there are some other tricky words that would probably be worth highlighting because they change the meaning of the sentence e.g. though, however, despite, etc). I was also planning on writing more to improve my retention of information. Please keep me updated on your progress.

I have been going through 4Clojure problems. My short-term goal is to rank in the top 100; I just made it to 197 today. I had been reading a bit about Lisp and find the style meshes well with my own thinking (e.g. in PHP, I have a tendency to use foreach loops a lot).

Various solutions (spoilers!):

[-][anonymous]10y 5

Today: Giving a workshop/tutorial on using paper and tape to explore riemannian manifolds. Trying to work out in what order to present the info and what questions I want answered. The purpose of this is to crowdsource on my personal mathematics research. link.

Also Today: Implementing title/menu screen on my tetris and space invaders clones. I think they will be done after that.

This Week: finishing up the AI class videos.

This month: Writing some more simple videogames as I scale up my skill towards more complex stuff. For the purpose of general programming ... (read more)

1jsalvatier10yWay to be proactive making your LW chapter work. Where are you located?
2[anonymous]10yvancouver, BC
2jsalvatier10yOh! I'm in Seattle. Do you guys have a mailing list? There's at least one LWer here who visits BC regularly and he might be interested in attending.
1[anonymous]10yYes we have a mailing list: google groups vancouver_rationalists, but it's closed to the public for some reason. Making it easier to join is the first order of business.
0amcknight10yI'm that regular BC visitor from Seattle jsalvatier mentioned. Can you tell me when the group becomes public so I can join? I'll be up there Dec 18th and Dec 22st to Jan 2nd.
1[anonymous]10yHey, I think the list [http://groups.google.com/group/vancouver-rationalists] is open now.
1[anonymous]10yI'll keep you in mind and let you know when we are ready.

We keep running the following program we devised:

http://www.algit.eu/download/Setup_Packntile.exe

We have some world records on http://packomania.com/

and are also here:

http://www.algit.eu/htmlji/Packntile/Packing_Contest_01052010.html

The whole idea is to fully automatize this effort and without a human help obtain many new packing records of various kinds. Currently the Pack'n'tile program is not very good at fine tuning, but it's very creative in finding entirely new configurations nobody has thought about them before. We will improve this fine tuning to p... (read more)

3Thomas10yComputer improved packing of 423 circles in a square from this: http://hydra.nat.uni-magdeburg.de/packing/csq/csq423.html [http://hydra.nat.uni-magdeburg.de/packing/csq/csq423.html] to this: http://www.algit.eu/htmlji/Packntile/Packing_Contest_01052010/SQU_cir_423_pic.html [http://www.algit.eu/htmlji/Packntile/Packing_Contest_01052010/SQU_cir_423_pic.html] An innovative horizontal fracture enables a slightly denser packing, was of course found by this "packing AI". (Eventually the links will show the same configurations, since we submit our results to Eckard Specht packomania's owner, who provides some additional details to the solution.)

Just finished finals, and have little to do for my research work. I'm devoting all my non-gaming time to the Decision Analysis Sequence. (I am not as sure about my decision to post the outline as a conclusion rather than an introduction, but hopefully it'll work out better in the long run.)

I'm in the sticky situation that the next post in explanation order is the one I least want to write. Right now I'm compromising by working on later posts in the sequence, hoping that'll make me want to write the next post more.

Also, major props to whoever coded the Top ... (read more)

I'm learning to play the piano. Started three months ago, taking weekly lessons from a teacher.

About to finish the Stanford AI and ML courses. Going to take up one or two of their new offerings in January, haven't yet made up my mind as to which.

Took up ping-pong. Last week a 9 year old boy wiped the floor with me.

Primarily, finishing my PhD thesis in mathematics. On the side, devouring through The Adapted Mind, The Cambridge Handbook of Experts & Expertise, and Russell and Norvig's AI book (I can post LW summaries if anyone is interested).

0Curiouskid10yI was thinking about buying a copy of the Cambridge Handbook. Does it offer any practically useful advice/insights?
1Technoguyrob10yNot much that I haven't figured out on my own, but it helped me make my belief in belief congruent with my belief (I understand now that consuming certain media literally re-wires your brain in a way you have no control over, and it helped me understand how important it is to consciously only read / study certain things, and limit others.) Here are some important quotes: "Research with these methods has shown that additional experience appears to make performance less effortful and less demanding, but to improve performance it is necessary to seek out practice activities that allow individuals to work on improving specific aspects, with the help of a teacher and in a protected environment, with opportunities for reflection, exploration of alternatives, and problem solving, as well as repetition with informative feedback." (Deliberate practice) Knowledge matters, and is almost exclusively characteristic of intelligence in humans: "In contrast, [computer] programs that are rich in general inference methods -- some of which may even have some of the power of mathematical logic -- but poor in domain-specific knowledge can behave expertly on almost no tasks." There is no such thing as "general aptitude," except maybe very subtly. The things you read, the people you socialize with, and the introspections you have to re-wire your thought, matter. This also means that going to a prestigious university is the best way to learn a given (academic) subject matter, neurophysiologically speaking, given the environment it immerses you in. Unfortunately, "the history of psychology suggests that there is no one 'truth' about how to accomplish learning and instruction."
0Dr_Manhattan10yInterested, but please post a sample before doing extra work.
0Anatoly_Vorobey10yOut of curiosity, what's your PhD thesis about?
1Technoguyrob10yWhen I started the program, I didn't know anything about the singularity or rationality or friendly AI or even much chemistry or biology! So I am doing some very hard and difficult introspecting about what I must do next to fulfill Horace Mann's eternal proverb, "be ashamed to die until you have scored a victory for humanity." Somehow, my calculations keep showing that the subject of my PhD, constructing a p-adic L-function for a class of automorphic representations in a particular reductive group called Gsp4, is not the way to go! I only need $15-20k a year to subsist and work on SIAI issues, but humorously enough my biggest concern is a job. Having a PhD in pure math makes me overqualified for almost everything except academia, and in that setting I would not have much time for existential risk issues given the postdoc rat race. I enjoy mathematics immensely, but it's about time I make some personal Level 3 decisions [http://lesswrong.com/lw/58g/levels_of_action/] and think about whether this is where I will fulfill most utility. Sadly, my emails to SIAI for the visiting fellows program have gone unanswered, but perhaps I should try again. I could always enter a neuroscience or theoretical computer science program.
0David Althaus10yDefinitely! The folks at SIAI seem to have hyperactive spam-filters. You can also write someone ( I think Carl Shulman is the right one, but I don't know for sure) a PM on LW. And do you know the Existential Risk Reduction Career Network [http://www.xrisknetwork.com/]?
  • For the next 2 weeks: finishing my end-of-semester exams and papers, so as to advance as a grad student.

  • After that, getting back to my attempt to summarise the cogsci of humour for my blog (will link when I have more parts up). I started by being interested in the cogsci of creativity and got a little distracted along the way. I'm finishing it because (a) I haven't really seen a good summary anywhere, (b) it incentivises me to read some stuff that I would otherwise not get to for months, (c) there are people who read my blog who would find it interestin

... (read more)

I've finished working though a book on proofs with the help of a fellow LWer (previously) and I'm now trying to work on learning measure theoretic probability theory.

I've been putting in more effort at work recently. I've been trying Pomodoros again with more success this time. I've been playing the game Angry Birds during my breaks in an effort to get some kind of reinforcement learning going on. It does seem to actually get me to do Pomodoros at least, but I don't know if it's done more than that (not that that's trivial).

I'm learning how to dress bette... (read more)

I am currently progressing through Learning Python The Hard Way.

I also am trying to find a legitimate job while going through grad-school applications.

4J_Taylor10yI just finished my first Project Euler problem.
2Normal_Anomaly10yI'm working on Project Euler too, also in Python. Would you be interested in sharing solutions to problems after we've both finished them? It would provide me, and possibly you, incentive to do more, and we'd get to compare strategies.
2cousin_it10yAfter you solve each Project Euler problem, you automatically get access to the forum thread where people compare their solutions to that problem. For example, I was happy to find Peter Norvig's impressively concise solution to #54.
0Kutta10yDo you have evidence besides the username and the programming skill that it's Norvig? I also entertained the idea that it's him. At first I didn't examine his code deeply, but its conciseness inspired me to create a 12-line semi-obfuscated Python solution. I posted a clarified version of that in the thread [http://projecteuler.net/thread=54;page=6]. What do you think about it? Also, could you tell me your Euler username so I could look for your solutions (provided that you actually post there)? Now that you mentioned Norvig's solution I investigated it and after correcting some typos I got it to run on my PC. I concluded that it works pretty much the same way as my solution (but mine's considerably faster :) ).
0cousin_it10yYes, I have exchanged emails with Norvig about it. But it didn't even occur to me to doubt his authorship, because the style is so similar to his Sudoku solver [http://norvig.com/sudoku.html]. My username is cousin_it but I never post there. Woah. If you enjoy crafting your code into such puzzles, check out call/cc in any language that supports it, e.g. Ruby which is really similar to Python. It will help you increase the amount of havoc per line :-)
0J_Taylor10yHello. I recently posted in the mentoring thread: http://lesswrong.com/r/discussion/lw/929/less_wrong_mentoring_network/ [http://lesswrong.com/r/discussion/lw/929/less_wrong_mentoring_network/] How interested are you in forming an anti-akrasia partnership? If you are interested, do you have a preferred medium of communication?
0J_Taylor10yCertainly. However, I should note that I have not progressed as far as you have.

Previous post.

Progress report:

Social: My social skill improvement continues to be successful, and I'm much happier socially. I joined okcupid, not for any particular purpose but because I realized the only reason I hadn't was an unfounded nervousness about "something."

Mathematics: I finished the first three chapters of Silverman and I have some papers to read; I'm going to be looking into some conjectures of Jochnowitz about the derivatives of L-series and Shimura lifts.

Practical: I replaced my keyboard and the new keyboard is great! Otherwise.... (read more)

3daenerys10yIf you want a female perspective on your okc profile, message me.
6daenerys10yThat was fun! Offer stands open for anyone else!
-1Username10yThere are a few reasons I haven't joined OkCupid, but one of them is that I'm conflicted about the "drugs" question. I want to answer it honestly but don't want employers (and othersquares [http://www.urbandictionary.com/define.php?term=square]) to see the honest answer. I could make it harder to find by making the profile visible only to other OkCupid users and not using my regular internet pseudonym, but my location and pictures would still be there. (I'm using the "community throwaway account" to write this.) Edit: I like your profile.
4sixes_and_sevens10yYou can always leave the question blank on your profile and signal your drug use habits with the corresponding match questions. For a similar reason I don't list "casual sex" on my list of what I'm looking for, but my match questions suggest I'm amenable to it.

For the past couple of weeks I've been writing a utility to search through code quickly. I'm doing this because at work, some large dependencies got tossed in extern, making ack and grep pretty slow. At first I tried to make them faster (creating aliases to ignore certain files), but I soon gave up and started writing my own thing.

Grep is slow because it doesn't ignore files by default. Ack is slow because it's written in Perl. So I'm writing it in C, using libpcre for the regex matching. So far it's about 3x faster than ack and 10x faster than grep. With ... (read more)

0Bugmaster10yHave you considered existing solutions, such as Krugle [http://www.krugle.com/products/krugle-basic.html], or IntelliJ and Eclipse's built-in tools or plugins [http://grepcode.com/faq] (assuming you're coding in Java or Python or whatever else Eclipse supports) ? If so, what were their major deficiencies, and how is your solution better ? The reason I'm asking is because, well, I'm a selfish bastard who doesn't feel like implementing his own code search engine, so I might as well use yours :-)
0AngryParsley10yI've tried Eclipse's search before, and it's way too slow for my needs. Also, the Eclipse UI has a lot of annoyances since it's not a native OS X application. It doesn't obey my keyboard map, for example. I haven't seen grepcode before, but it looks like it builds an index. That's a non-starter for me, since code often changes and I don't want to wait for an index to get rebuilt before searching. If the tool silently rebuilds the index in the background, it's even worse. Then I don't know if the search results are correct or not.
0jimrandomh10yIt doesn't have to mean that. It could respond to your search by walking the directory structure checking last-modification times, comparing them against its index, and updating anything that's been modified.
0Bugmaster10yI see, that makes sense, but I think that you might be better off with a hybrid approach: build an index first, and do real-time search on all files that have been changed, and thus haven't been [re-]indexed yet. I'm not sure if any of the existing systems do that, but it's worth checking out. Of course, if your codebase is relatively small, performance won't be much of a problem...
0AngryParsley8yAn update for those who are curious: Ag [https://github.com/ggreer/the_silver_searcher] is now the 11th most-starred C repository on GitHub. It's more popular than memcached [https://github.com/memcached/memcached] or Arduino [https://github.com/arduino/Arduino]. It will soon surpass XBMC [https://github.com/xbmc/xbmc] to become #10. People freakin' love it.

Aside from taking finals, finishing final projects, and the usual end of semester blather, I'm working on - ahem - going to start working on turning my recently defended master's thesis in statistics into a journal article or two. Essentially, I'm introducing a new methodology for analyzing a set of rather complicated economic experiments (complicated as far as economic experiments go anyway). The methodology is finished aside from a few tweaks I want to make to the model, but getting everything into a distilled, presentable form for economists to read is the next challenge.

I'm working on my Python skills: I've done the first 11 Project Euler problems.

The research project that I did over the past year is finished, and I've submitted it for publication in DNA and Cell Biology. It's a study on the effect of mortality rate on the rate of evolution in a simulated population (wrote the simulation myself, also in Python).

Finished college applications, one acceptance and two deferrals so far.

Steadily working my way through my pile of unread books.

Learning Programming: Efforts are desperate but with a focus on C. I've been reading through K&R and I'm at arrays and pointers. When I'm confused on need help I pick up either Code: The Hidden Language of Computer Hardware for its treatment of bit-wise operations and its general lucidity or C Primer Plus which assumes you are five and takes thirty pages to do what K&R does in a paragraph but if you're stuck it's better to scan those thirty pages for the sticking point and where they make it explicit. My first course CS is Programming C next semest... (read more)