1,445 karma · joined September 4, 2016
I'm always impressed to see derivative and both matrix inversion & transpose as elementary operations instead of googling for a library that is most likely poorly documented. Furthermore, since the vector is the basic data type, things like matrices crop up a lot more in J & APL. In Python they are for scientific pursuits. In J they will often crop up even if you're writing a blackjack game. I think this is why it doesn't appeal to many programmers without a strong mathematics background, but it's very appealing to those who have that kind of background and grow tired of writing incessant loops.
Edit: I just re-read my comment and I hope it didn't sound too condescending (not my intent). I'm fairly new to J, but it's pretty cool and I hope you give it a shot if you ever need to do any data oriented tasks.
Vanilla Ice song, Titanic song (my heart will go on), and Hansen Mmmbop might make you cringe, but people went nuts over those songs for a reason. At the time they were amazing. Php might not be the world's greatest language, but at the time it had what people needed in the way they needed it (easy to build websites). Haskell may be objectively better than Php from a language design standpoint, but there is still a LOT that keeps your average Joe/Jane developer from really learning the language (which string library to use as the seemingly default one is really slow, bad IDE support, unpredictable performance due to laziness, monads...etc). You can tell me Haskell is great all day and on paper I would agree, but due to the simple fact that in reality nobody is using it in production or hiring for it (yes some outliers exist), that tells the average person all they need to know. Where is Haskell on tiobe (yes not a perfect source I'm aware, but good enough)? I don't think it even shows up in the top 50 languages. That means drastically reduced employability to many people.
I'm definitely not bashing Haskell btw. I think it's great, but I could also understand a lot of people shying away for good reason.
J has "tacit programming" where you basically can write hyper general and terse programs with it still being readable. I just wish performance was more in line with Java.
I've been considering system76 for awhile. I see Dell also offers Linux laptops now and has for awhile. Any reason why I should pick system76?
I also have a hobby interest in HP calcs (own a 15-c), so double interest here. Not sure if you're a blogger, but that is some legitimate history with the early usage of handheld computing to aid science & engineering. A blog post would be great, but I'd settle on a reply here.
Btw: Would you please ask your father what type of calculations he ran on his calc as a power systems engineer? Fortran would've been around for state-estimation and contingency analysis by that time if he was in transmission. For distribution I could see him doing fault analysis or calculating line parameters. If he was on the generation side I'm not really sure what he'd be calculating (not my area). Of course utilities were fully vertically integrated during that time frame, so he could have done a mixture.
UNIX and thus Linux are all about pure user power. The shell is great and there are lots of tools available by default like Awk, Perl, Python, TCL, Sed, GCC, Vim, Emacs...etc. The entire OS isn't perfect, but is designed for people who know what they're doing. Compare that with CMD & Batch and it is Linux is like an SUV that can also fly and shoot lasers while Windows is like a moped. Of course I'm exaggerating a good bit, but even Powershell has a lot of issues and doesn't allow you to easily do what you can in Linux. In Linux everything is text and it's easy to pipe things around. In Windows it's all objects and frustration. I agree that Smalltalk on the Alto is pretty cool, but Windows is nothing like that besides having some OO stuff. Something I do all the time on Linux is "locate filename" and pipe that to "grep" to be more specific. On Windows, open up the search Window and pray you can narrow it down or wait a very long time.
I use Windows and Linux at work. On Linux I feel like everything is designed to increase my productivity as are the tools at my disposal. On Windows, I'm always fighting the lack of good tools. Sure Visual Studio + .NET is pretty good if that is your thing, but I personally don't like having to open an IDE that uses that kind of resources if I essentially need to write a simple script. I've spent quite a bit of time with Powershell, but it simply isn't as productive as Linux due to the increased complexity. Sorry for the rant, but as i spend a lot of time with both OS, I have strong feelings on this.