HN user

tomcdonnell

154 karma

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

Posts30
Comments26
View on HN
unchartedterritories.tomaspueyo.com 2y ago

What would you do if you had 8 years left to live?

tomcdonnell
4pts0
en.wikipedia.org 2y ago

Dancing Mania

tomcdonnell
1pts1
newatlas.com 2y ago

Unpowered cargo gliders on tow ropes promise 65% cheaper air freight

tomcdonnell
77pts77
www.youtube.com 2y ago

Taiwan's secret weapon could cause a war [video]

tomcdonnell
3pts0
the-race.com 4y ago

The make or break element in the 2022 F1 rules

tomcdonnell
2pts0
s1.flatpackapps.com 4y ago

Formula 1 Statistics

tomcdonnell
2pts2
en.wikipedia.org 4y ago

Behavioural Sink

tomcdonnell
1pts0
sheecegardezi.github.io 4y ago

Digital Twin – A 3D virtual recreation of Hobart

tomcdonnell
1pts1
en.wikipedia.org 4y ago

Broken Spectre

tomcdonnell
2pts1
www.abc.net.au 5y ago

An out-of-control Chinese rocket is hurtling back to Earth

tomcdonnell
6pts1
journalofcontroversialideas.org 5y ago

Journal of Controversial Ideas

tomcdonnell
3pts0
www.s1.flatpackapps.com 5y ago

Show HN: Formula 1 Statistics Database

tomcdonnell
5pts1
www.nytimes.com 5y ago

Mutant Crayfish Clones Itself, and It's Taking over Europe

tomcdonnell
8pts3
www.abc.net.au 6y ago

How Australia Is Paying for Welfare

tomcdonnell
1pts0
www.herox.com 6y ago

Exploring Hell – Avoiding Obstacles with a Clockwork Rover

tomcdonnell
1pts0
www.inverse.com 6y ago

NASA brings Voyager 2 fully back online

tomcdonnell
57pts1
f1metrics.wordpress.com 6y ago

Formula 1 Top Drivers (statistical analysis)

tomcdonnell
2pts0
www.scientificamerican.com 6y ago

Is Inequality Inevitable?

tomcdonnell
3pts2
youtu.be 7y ago

World's best table tennis robot vs. skilled player

tomcdonnell
2pts0
initiativeq.com 7y ago

Initiative Q – Q is tomorrow's payment network

tomcdonnell
5pts0
www.electricitymap.org 8y ago

Electricity Map – Live CO2 emissions of electricity consumption

tomcdonnell
2pts0
en.wikipedia.org 8y ago

Wikipedia – Phoenix Lights

tomcdonnell
1pts0
autotutor.com.au 8y ago

Show HN: Autotutor - High school maths/physics exam practise website

tomcdonnell
1pts1
www.theage.com.au 8y ago

UFOs- We are beyond reasonable doubt says former head of real life X files

tomcdonnell
4pts0
www.bbc.co.uk 8y ago

Global Dimming (2014)

tomcdonnell
2pts1
www.abc.net.au 9y ago

Japan – Marathon Monks

tomcdonnell
1pts0
lemire.me 9y ago

Has the Internet Killed Real Estate Agents Yet?

tomcdonnell
2pts0
ostagram.ru 9y ago

Neural Net Combined Images (Russian Site)

tomcdonnell
3pts0
eftm.com.au 9y ago

What went wrong with the Australian census

tomcdonnell
2pts0
www.traffic-simulation.de 10y ago

Traffic Simulation

tomcdonnell
144pts21

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.)

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.

I developed this F1 statistics site using a low-code database app creation tool that I also developed (flatpackapps.com). Constructive feedback is 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?

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.

https://github.com/tomcdonnell/minesweeper_solver_text_cpp

Anagram Scoring 9 years ago

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:

http://tomcdonnell.net/submodules/anagram_finder

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? 13 years ago

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.