tomkludy's comments

tomkludy | 5 years ago | on: What can 6,000 electric vehicles tell us about EV battery health?

The 2011/2012 Leafs had major problems with battery degradation in hot climates so much so that Nissan was forced to offer a free battery replacement. So I got it replaced for free. The newer battery is lasting better, but still not great. I think Nissan screwed up by sticking to passive battery cooling.

For reference I live in southern Florida so we have hotter than average climate.

tomkludy | 5 years ago | on: What can 6,000 electric vehicles tell us about EV battery health?

I own a 2012 Nissan Leaf which has had major battery degradation (first battery went under 70% in only 33k miles, second battery currently around 85% at 45k miles = 78k miles total on both). But on this site, the 2012 Nissan Leaf has less than 2 years of data and shows zero degradation during that time. So it seems like the data is questionable.

tomkludy | 7 years ago | on: Dependent Haskell

Every discussion or article I have read on dependent types assumes that the reader is a mathematician. I usually make it only a few paragraphs in before I am completely lost.

Right now the only thing that seems clear is that dependent typing adds significant mental burden on the programmer to more thoroughly specify types, and to do so absolutely correctly. In exchange for that burden, there must be practical (not theoretical) benefits but they do not come through clearly. All of the examples I've seen are about "index of a list is guaranteed in bounds". That is such a minor and infrequent bug in practice that it does not justify the additional complexity. There must be more, that I'm just not seeing.

Is there a "Dependent types for non-mathematicians" article out there somewhere, where I can learn about patterns and practical applications?

tomkludy | 11 years ago | on: N.F.L. Playoff Simulator

I love this tool, have been using it obsessively on football sunday :)

Question (or suggestion): would it be possible to choose the desired outcome? By that I mean, my team (the Lions) is already in the playoffs, so all changes I make show 100's in all columns. But what I'm really trying to narrow down is whether they will win the division, or whether they will have home field advantage throughout. Perhaps once a team has met a particular goal (i.e. 100% chance of making the playoffs for example) the remaining games could be ranked vs. their percentage chance of reaching the next-higher goal?

tomkludy | 12 years ago | on: Duetto: a C++ compiler for the Web going beyond Emscripten and Node.js

Frankly, I've had to maintain a huge C++-only codebase, and that's why I hope to never write another app in C++.

Yours is an argument for a high-level, typesafe, compiled-to-native and compiled-to-javascript language. But IMO the argument falls down when applied to C++, because it is not high-level, it is only marginally typesafe, and it doesn't compile to javascript well at all (tradeoff of either massive performance, or missing basic functionality like 64 bit ints).

It is very possible that no language will fit this role exactly for some time to come. But, to me at least, it is very clear that C++ is NOT the language for the job.

tomkludy | 13 years ago | on: A Modest Proposal for Improving Website Authentication

IMO the root problem is that A) we have too many identities, B) those identities are rarely protected properly (sites don't hash/salt, don't have password expiration policies, don't use 2-factor auth), and C) managing those identities over time is nearly impossible.

I use lastpass, and it's great. But I didn't always use it; before I started, I used a couple of passwords everywhere. Recently some site which I haven't even used in years was compromised, and as a result, one of my "frequently used passwords" was potentially compromised. I had to spend hours going to dozens of websites and changing my password. Every site has a different way to change your password, and different policies for acceptable passwords, and most don't even make it easy/obvious.

I think something like Mozilla Persona is a good start, but not quite complete. Give me one, central place to manage my identity. The ability to control which sites have access to my identity. The ability to allow, or not allow, different sites to correlate my identity with each other. The ability to have my identity independent of my email address. Good two-factor auth for establishing identity, and good password management policies. Single-sign-on, even across independent sites, with just a click.

So the problem is that a proposal like this encourages people to do the wrong thing; i.e. ask me for a username and password - without two-factor auth, without considering whether I will be able to manage yet-another-password, without considering whether they should even be in the business of authentication themselves.

tomkludy | 13 years ago | on: Writing node.js applications in C#

MVC 4 also allows non-blocking IO. Mark your controller as "async" and use async calls within your controller method.

The evented IO model is nice, but nothing earth shattering. Same can again be accomplished with async IO calls, which are trivially easy in .NET 4.5.

tomkludy | 13 years ago | on: Writing node.js applications in C#

I personally find those "helpful" things to be truly, well, helpful. For example the input validation, anti-forgery token validation, simple cache control, etc.

Again, not saying you can't do these things in node. The two technologies can easily accomplish the same goal. But if your primary concern is avoiding JS, why would you choose a technology that is built entirely upon it?

Node.cs might make more sense, I agree. I have a feeling the existing ecosystem might bring its own problems with the author's approach, because your C# code may have trouble integrating with those existing libraries, if the underlying generated code does not behave as the Javascript library expects.

tomkludy | 13 years ago | on: Writing node.js applications in C#

I'm genuinely curious which feature(s) of node you like better than ASP.NET. I have used both and find them quite similar as far as "raw" capability. ASP.NET however has all of the things you were asking for: great Intellisense, great tooling (for instance integration with Entity Framework), great libraries available (such as SignalR), code in C# or any .NET language (including F#), rich async support...

I like node too, but to me, the reason to choose it is either if you want to remain platform-neutral, or if you really like Javascript.

tomkludy | 13 years ago | on: Writing node.js applications in C#

What exactly is the point here? If you want to write C#, just use ASP.NET and MVC 4. You will certainly save yourself a lot of headaches, and you can still do everything async, etc. From what I can tell, the purpose of Node.js is to reduce the number of technologies that a web dev has to use and understand. You already need to use JavaScript on the client side, so using the same thing on the server side allows code reuse, knowledge sharing, etc.

It seems like what the author really wants is ASP.NET on the server, and Script# on the client side. Then the whole stack is C#. Or perhaps he would find TypeScript an acceptable middle-ground on the client. But I don't understand why you would choose Node.js on the server if you hate JavaScript, does not compute.

tomkludy | 15 years ago | on: Ask HN: experiences with Lasik eye surgery (programmers especially)?

I had the waveform surgery 3 yrs ago and it was one of the best things I've ever done for myself. My vision was not terrible before (-1/-1.25 + astigmatism) but afterward I have 20/15 in one eye, 20/20 in the other. The biggest aspect of the correction was that prior to the surgery, I had very bad night vision - halos and glare - that made it very difficult for me to judge distance or speed of oncoming traffic. Afterward, my night vision is very good, and those problems are corrected completely!

The surgery was, I have to admit, a very frightening experience though it did not hurt. The recovery was very quick and easy, and I am happy to report that after one month I never experienced dry eyes again and have had literally no negative effects from the surgery.

I used to wear contacts until my doctor said my eyes were growing blood vessels they should not have to compensate for the contacts blocking the eye from being exposed to the air, and that those might eventually lead to serious problems. Then I talked to a family member who had Lasik (non-waveform) and they loved the result, though it caused night halos for them. So I did the research and decided on the waveform procedure and I am really glad I did. I would definitely recommend it, but spring for the waveform procedure.

Another thing to mention is that my doctor told me that Lasik does not change anything about age-related vision problems, because those are more due to the inability of the eye to change focus than a malformed cornea. He says you are just as likely to need reading glasses at age 50 after Lasik as you are without it. The only thing they can do for older patients is an alternate procedure where they change the focus of one eye to nearsighted, and the other to farsighted. Apparently your brain soon compensates for that and biases to one or the other eye so that you see both near and far things in focus.

page 1