867 karma · joined January 4, 2018
That only makes sense if you're hiring a frontend developer. Many people who are excellent programmers hate frontend development, and will happily use a theme or clone a repo if they can avoid frontend work that way.
I still feel great for the people who were in serious financial trouble and are not anymore. Let's just hope they see it as an incentive to never be in that situation again.
'Understand' is a big word. I've played around with Idris (which is a Haskell-like programming language that supports Homotopy type theory as well). I have a grasp of the underlying mathematics but don't really understand the stuff deeply.
Yes, I went on a bit of a rant and totally ignored your (totally reasonable) question. Theorem proving and proof checking are quite niche, both within computer science and mathematics. In computer science, the idea is that you can formally prove the correctness of computer programs to avoid software failures and have very robust programs. In mathematics, the ideal is to have
1. A universal language for proofs
2. A database of computer-verified results
3. Easy verification of new results
It's a mighty interesting topic, and unfortunately, I've also found it quite difficult to get more than a shallow understanding of it.Reminds me a lot of how narrow-minded a lot of people are in tech. Everyone who knows a bit more than you is a wizard and everyone who knows a bit less is a moron.
The answer to that is that there are no good tools and no universally accepted common notation that is amendable to automatic proof checking yet. Those are problems that projects like this want to solve.
I applaud the effort really; it's hard work, and people tend to ask more critical questions ("What is it good for?" "Theorem proving is for academics only") than for any other type of program.
I don't think a lot of people would actually use asymptotically slower algorithms when using a different language.
(I don't understand your remarks about ethnicity. As far as I know 'douchebag' is not a racial slur.)
Well, language is open, and confusing terminology will cause misunderstandings. Besides, there is not one definition of open source, and the most common definition has 10 criteria. You're not exactly doing anyone a service by calling someone who is not aware of all this background and understandably uses a rational interpretation of "open source" a roach. In fact, you come across as a douchebag.
(Now, I agree that intentionally abusing the term is reprehensible, but that does not seem to be the case here)
For some reason, coffee machines with a built-in reservoir for coffee beans annoy me a lot more than the ones with a filter. For one with a filter, I know I have to put some coffee in it and fill the reservoir. I can determine the strength of the brew by this as well. The ones with built-in reservoirs should be able to give you a cup of coffee, but it is incredibly annoying when you have to suddenly refill the reservoir.
While the total work you do is less, the machine is unpredictable. It feels like the machine now controls you, instead of the other way around.
At a previous employer, we had a test that took about 45 minutes, which most people just accepted as a fact of life. Unfortunately, we had to use this test a lot. After I optimized it (in my own time, because the team lead didn't think it had priority), it took 5 freaking seconds. Probably still far from optimal, but way more manageable.
I recently started working at a company where we use Linux workstations. I work on a machine where I don't have sudo rights. Yesterday I asked a co-worker if he could install a package for me. From the time of me asking and the time that the package was installed on all the workstations, there was about 10 seconds. Nice.
See http://hamsterworks.co.nz/mediawiki/index.php/FPGA_Projects for many examples (also using different boards).
Edit: Just realized that storing a single frame needs quite some memory. This is something you need to keep in mind. If you use the DDR RAM on the board you'll probably be find, but this is not trivial (even using the tools designed to do this).
It seems similar to a strategy they use more often, famously known as embrace, extend, and extinguish [1]:
1. Use some standard/specification
2. Accumulate lots of users with questionable strategies
3. Extend/break/deviate from the specification
4. Devs update software to cope with the undocumented Microsoft(c) behavior
5. There is no point in following the specification or standard anymore, since it won't work in practice anyway. Microsoft effectively dictates what devs do.
[1]: https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguis...This post may be influenced a little by the irritation that after seven years of study and two years of work experience (and many time spent on this stuff as a hobby in my free time), I still don't match nearly 50% of the 'requirements' in this list. But hey, these lists should be taken with a lot of salt. It's pretty fun to make one and reflect on all the things you've learned. In my list, there would be more numerical analysis and less languages.
Then why don't they just pay for the subscription, but don't submit anything? Or upload a freely accessible pre-print version like many people do?
[1] https://people.freebsd.org/~lstewart/articles/cpumemory.pdf