I created http://autotutor.com.au together with my father, and that landed me a job at an educational software company.
HN user
tomcdonnell
Personal website: http://tomcdonnell.net
SAAS Business 1 - Flatpack Apps (Convert a spreadsheet to an online database) http://flatpackapps.com
SAAS Business 2 - Autotutor (maths/physics exam prep website): https://autotutor.com.au
When I was at university, one professor of electrical engineering would refuse to answer any student who asked whether their answer to a circuit theory problem was correct.
When asked why he would refuse to answer, he would say: "If you aren't confident that your answer is correct, then I would like to mark you as wrong even though you may be right. You are the expert. You should be telling me that your answer is right, not asking me whether it is right."
He would also say that another acceptable answer occasionally might be "Your question is wrong" (along with an explanation as to why it is wrong).
This professor's attitude bothered me at first when I was on the receiving end of this advice, but I have come to regard it as some of the best advice I have received.
Especially in a professional context, I have found that it pays to convince myself that my recommended solution is a good solution, perhaps by confirming it using a few independent methods, and also by anticipating the responses of detractors, and coming prepared with answers to likely objections that others might offer.
To get over the fear of falling over backwards, you must learn to turn your tree trunk like fall into a collapse to a ball and then a forward roll. If you have a bit of muscle on your back and shoulders rolling even on a hard floor should not be too uncomfortable. (A crash mat is still a good idea though.)
Here is a video demonstrating the 'handstand to planche' move.
You think it's the balance, but consider that the more strength you have, the less balance you need. For example with more forearm strength you will be able to lean further onto your fingertips. With more shoulder, arm, and abdominal strength, starting from a handstand position you will be able to pivot at your shoulders and bend all the way down to a planche position. So work on your strength, and handstands will become a lot easier.
The stack is MySQL, PHP, and Javascript with use of JQuery.
Page loads are fast because of simplicity of design, and caching of database query results.
Of particular interest to F1 fans will be the current season teammate battles section, and the all time teammate qualifying [1] and race [2] battles.
[1] https://s1.flatpackapps.com/app.php?pageId=844 [2]: https://s1.flatpackapps.com/app.php?pageId=845
I developed this F1 statistics site using a low-code database app creation tool that I also developed (flatpackapps.com). Constructive feedback is welcome.
This is hilarious and brilliant. Well done.
This was submitted (not by me) as an entry to Gov Hack (https://hackerspace.govhack.org).
Here is the project page: https://hackerspace.govhack.org/projects/digital_twin
Link to the Autotutor website: https://autotutor.com.au
Hi, I'm Tom, son of Mike and co-founder of Autotutor.
Any constructive feedback on any aspect of the website is very welcome.
Hello everyone,
I've created a Formula 1 statistics database using a freely available data set.
To create the F1 online database, I used a tool that I developed called Flatpack Apps (flatpackapps.com) That tool will be the subject of a future 'Show HN' submission.
F1 fans might be particularly interested in the 'teammate battles' section. By using this feature, one can get a very good idea of how a driver has progressed throughout his career relative to his teammates.
For example, with Sebastian Vettel having performed poorly last season, many people discount his four world championships (saying his success was mostly due to a dominant car), and discount even further the rating of his teammate at the time Mark Webber, who struggled in those years relative to Vettel.
However, browsing the teammate battles of Mark Webber over his career [1], it is clear that before he was teamed with Seb Vettel, Mark Webber was a stellar performer. He dominated over each one of his seven other teammates in qualifying, including Nico Rosberg and David Coulthard.
[1] http://www.s1.flatpackapps.com/app.php?pageId=806&driverId=1...
I plan to add charts to the teammate battles feature, and have some ideas on how to algorithmically find the best driver of all time using the teammate battles data (which has already been done very well here [2]), but will always be a fun exercise.
[2] https://f1metrics.wordpress.com/2019/11/22/the-f1metrics-top...
Does anyone have comments or feature requests?
This article (or a very similar one) has been shared on HN before: https://news.ycombinator.com/item?id=16314211
Flatpack Apps is a lo-code tool for database application development. No demo version on the website yet, but that will come soon.
More specific claims have been made and held accountable at http://longbets.com.
I've done quite a bit of unicycling. The better your balance, the less energy is required for balance. I think for a skilled unicyclist the difference in pace compared to being on a fixie would be slight.
Please consider sharing this email exchange with lettersofnote.com. I am not affiliated in any way with that site, but I have found it to be a great source of inspiration and a reminder that very successful people are still people, and often very approachable and kind people. Reading this sort of thing can restore one's faith in humanity, and provide impetus to change one's own behavior towards kindness and generosity.
This is an exam practise website targeted at high school students. I collaborated with my father in developing it. The tech stack is PHP/MySQL/Javascript. No frameworks, just jquery and google charts. Everything else is custom code.
Any feedback or tips on marketing or desired features will be much appreciated :-)
Here's my command-line minesweeper solver, in c++. It is not optimal, but does a pretty good job of solving expert sized minefields. I never worked out what percentage of minefields it solves, because I planned on doing some more work on end game scenarios. That was about ten years ago. The code is quite readable, so may be of interest to fellow coders, and anyone is welcome to extend it if they wish.
Here's a video of the 88 skip record mentioned in the article.
I wrote a tool to help with finding good anagrams of the multi-word sort by a semi-automated process. It is limited to anagrams of 15 letters or less, but useful for finding multi-word anagrams from names.
http://tomcdonnell.net/submodules/anagram_checker/
I used it to find anagrams of my coworker's names for a weekend project.
I wrote a javascript game based on anagrams as part of a 'get to know your team' exercise at a previous job. It was a weekend project.
The game asks the user to guess the name of a team member from anagrams of that name displayed for short time periods on screen.
Click the 'automate with answers' button for a nice animation of rearranging the letters.
http://tomcdonnell.net/submodules/anagram_game
Here is the tool I used to find the anagrams:
I liked Bill's advice on how to speed up meetings:
“Every time you say ‘thirteen,’ I’ll know that what that means is that all you want to do is what the customer wants. And for every one of these other gibberish slogans, we can also get little numbers. There are a lot of small integers available. We’ll just tighten these meetings up. You know, Cannavino, if you want to talk about how you’re going to save the U.S. educational system, okay, we’ve heard that story. That’s a good fifteen-minute one. That can be number eleven.”
Why Sass indeed, when all that can be done with Sass, can be done with plain old PHP?
Example: style.css.php
<?php
header('Content-Type: text/css');
$brandColor = "#fc3;\n";
$defaultStyles = <<<STR
margin-bottom: 20px;
font-size: 14px;
line-height: 1.5;\n
STR;
?>
a {
color: <?php echo $brandColor; ?>
}
nav {
background-color: <?php echo $brandColor; ?>
}
p {
<?php echo $defaultStyles; ?>
}
footer {
<?php echo $defaultStyles; ?>
}I consider economics to be more like a branch of philosophy than a science. The way to judge a good economic theory from bad one is to evaluate the soundness of its arguments. Historical data can never confirm or refute an economic theory because people have free will, and can act any way they choose.
Here's how I do type checking in Javascript.
function doStuffWithAVarietyOfParameters(s, a, b, i, ni, p)
{
var f = 'contractCategoriesAndAddExpandButtons()';
UTILS.checkArgs(f, arguments, ['string', 'array', 'boolean', 'int', 'negativeInt', 'Particle']);
// Do stuff.
}
For functions with many parameters, I like to pass the parameters inside an object and give the keys descriptive names. function doStuffWithAVarietyOfParameters(o)
{
var f = 'contractCategoriesAndAddExpandButtons()';
UTILS.validator.checkObject
(
o,
{
arrayParam : 'array' ,
boolParam : 'boolean' ,
nullOrFloatParam: 'nullOrFloat',
particleParam : 'Particle' ,
positiveIntParam: 'positiveInt',
stringParam : 'string'
}
);
// Do stuff.
}
Both functions will throw an exception if the arguments list is not as expected. The code can be found via the links below.https://github.com/tomcdonnell/lib_tom/blob/master/js/utils/...
https://github.com/tomcdonnell/lib_tom/blob/master/js/utils/...
I do type checking similarly in PHP.
http://tomcdonnell-tech.blogspot.com.au/2011/09/favourite-ph...
Another option for wealthy individuals is to continue investing their wealth into their companies, with the expectation that the indirect economic effect of doing business as usual will have a greater positive effect on the poor and needy than an equivalent direct cash gift would.