Yeah, I realize it was part of the game, but I just have such a strong aversion to it that that was the line for me. Even creating a fictional account is too much.
Take a break from it completely and for as long as you can. Find something else to do with your time, boring things. Not watching movies. And when you feel you need to code something, don't do it. Just think of what would you build, and how, but don't do it. Think of the most awesome and complex project you can, that would require 10 times the knowledge you have right now in order to complete or even get started with. When you will eventually get back to your keyboard it it will feel fascinating again.
Oh no (alas). This solver only works with TetraVex-type puzzles, that is puzzles for which you cannot rotate the pieces. My algorithm only permutes the pieces, like a 256-card deck. But if someone finds a way to transform the Eternity II puzzle to a TetraVex (the hardest part, IMO), then a solution can be found with this program... in the blink of an eye. ;)
Right now: it works badly with a lot of users at the same time (it solves puzzles generated by other people...). I will then have to deactivate it very (very) soon in order to fix this issue.
You will probably think that I am crazy, but my goal with my program is to simulate, as subtly as possible, the idea that Penepos symbolizes.
But wait, TetraVex puzzles are NP-complete (http://www.sciencedirect.com/science/article/pii/S0020019006...), and my algorithm solves large ones almost as fast it is possible to check them, so maybe Penepos is not just a fantasy... (You may understand with this sentence that I am a strong believer that P = NP).
I have updated my algorithm (when I worked on the step-by-step visualization process, I realized that sometimes it was doing worthless extra steps), then it is faster than the first version. The new version is online. You can also upload your own puzzles now.
For 16x16 TetraVex puzzles with 23 different colors, it takes, for about 80% of them, less than 10 milliseconds on a regular computer with no parallelization (I use two instances: one on a Surface Pro 3 and another on a EC2 t2.micro).
For the others, it takes about 100 to 200 milliseconds to solve.
Then, IMO, it takes 'almost' the same time to generate a solution than to check it.
I sure seems very fast. I'm just wondering if you know anything about how fast it would be on a worst-case NxN board? When you write 'sub exponential', do you mean that literally? Or do you just mean that it seems fast?
Hi. Sorry for the late reply: I do not check often this account. Feel free to contact me via the contact page (where my email address is displayed) on my website to ask me any question!
We get it, but it's just not that funny. Also, I think I would consider Go truly successful when people stop feeling the need to point out every place that it's used.
That's nice. But I kinda like the multi tab feature. It was the biggest thing to happen to browsers before HTML5. Usually when I google something I open the first 4-5 pages that look relevant so I can quickly scan their content. Even on HN I open 10+ tabs with the stories that seem interesting and then start reading them. But I'm sure there will be users who need this. Good job.
By no means were we trying to abolish tabs; we pretty much just wanted to help minimize the number of ways to get distracted from any single task. It's not something we envisioned being on all the time per se. It's more for a serious focus session.
There is a difference. The difference between someone who works as a programmer, who takes it just as a job but of course can be extremely good at it - just like anything else you practice a lot; and someone who is a programmer. They are lexically the same but they mean different things. The last one, beside working (or not) as a programmer, does it for the art of it. Who not necessarily learns or does something (ships) because it's needed or it provides anything else beside the joy and fulfilment of learning and understanding it. For example, at work, when you want to stop programming you open your own personal open source project and relax for an hour with it. Then you go home after 8 hours of programming and start up your IDE and carry on with your art that may or may not ever see the light of day and it makes no difference.
That's hazy territory. While I understand what you're trying to get across, there's really no point adding layers of hidden meaning and subjectivity to the term "programmer".
(non-software) engineers, lawyers, graphic designers, accountants, chemists, doctors define themselves by occupation and not some subjective non-metric of passion. Why exactly should programming be different?
I'm not arguing that programmers shouldn't be passionate about their work, or work on side projects. However, there's really no point in prevaricating over what a "Real Programmer"(tm) is, beyond the very simple working definition we have.
Because we're talking about programming here. If we were talking about music for example, the same will apply. There are singers and there are artists and there is a clear difference in a song well made and a commercial song. Even if the last one makes you more money. But for programmers there's just that one term to use. So the need to point the hidden meanings.
There are no "hidden meanings". You're making them up.
edit :
Words, like functions, work best when their meaning is simple and clear. Like functions, there's nothing wrong with combining them (e.g. "good programmer", "passionate programmer", "programming craftsman", "software composer"), but shoehorning multiple definitions into a single word will just inevitably lead to confusion.