Live data from Hacker News

Ask HN: Do you use an old or 'unfashionable' programming language?

news.ycombinator.com

271–280 of 338 posts

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#271
post #80

Earlier quoted context omitted.

> perhaps better saved for a blog post Please do write it, and submit it to HN! This is the sort of material nearly all of us would love to read.

It'd certainly be interesting to relate a multi-decade software project from the outside :-) I will have to talk to my father about this... and explain why folks on the internet must hear his stories. In the interim, would anyone happen to have an example of a good secondhand account of a software project? A basis or, at the least, an inspiration for how to proceed.

My example is not explicitly software-related, but it's very very close.

https://www.reddit.com/user/36055512/submitted

Start oldest first, bottom of the list, and go upwards for chronological order (identical titles are to different subs, so only comments will be different).

Last I heard a book was in the works. I'm not yet sure if it's surfaced yet, but these posts make for a good few hours' reading. They're great.

The secondary suggestion here is that finding a forum that will appreciate the posts and give feedback - note the upvotes and sheer quantity of gold - can be incredibly encouraging. This format also benefits from the fact that there are so many posts on a daily basis all the readers have plenty to keep busy with while they wait, so each writer can establish a lazy pace of writing and submitting that isn't pressured or hectic.

As for continued inspiration, https://www.reddit.com/r/talesfromtechsupport features some great technical writing. Sort by top/week or top/month to find quality examples and the latest top authors (top/all is also awesome, but changes there are months apart) - just try not to drown in the firehose of cringe-inducing idiocy reporting! xD

The idea here would be that the subreddit's sentiment is grokked, inspiration happens, and a new writer appears :D

(Stop by Reddit's TOS and overview, and do NOT skip installing Reddit Enhancement Suite if you decide you like this particular site.)

Wherever the content ends up - a subreddit like TFTS, another messageboard or forum, or a blog - definitely please do link it. :D

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#272
post #34

Pascal - still use it today. I started with Turbo Pascal 3.0, went through several versions of Borland Pascal (DOS and Windows), several versions of Delphi, and am now using FreePascal. I do most of my work on Linux nowadays. Pascal still gets everything done and after 20+ years I am really fluent in it. Did a little bit of Javascript with Node.js, also looked at Golang. While I did like some aspects of them, there w…

This is pretty awesome, and the speed is great.

I really like obscure search engines, because their (comparatively :P) tiny indexes mean they'll return significantly different data to what say Google or Bing would return.

If there's one thing I would definitely vote for with projects like this, it would be... an API. In a world where virtually every search engine is built around the idea of controlled, non-open access, a predictable, documented, free-access API would be a breath of fresh air, and you'd get people seriously interested in this even though it's small. (You'd definitely need rate limiting though because there are always the hangers-on with the low IQs. >.>)

You may (or may not, no idea) also be interested in the Common Crawl corpus - http://commoncrawl.org/the-data/get-started/ - which contains a few PB of data collected over the past few years (sorted by date). Access via HTTP is only moderately involved: read the line immediately above "Data Format."

Of potentially much less interest is a 2012 80TB snapshot Archive.org are (or at least were) offering; they seeded their indexer off the Alexa top 1m and boxed up whatever came back. https://blog.archive.org/2012/10/26/80-terabytes-of-archived... It's apparently only available on request (I expect a search engine would definitely qualify, especially considering the data is 4 years old now - although I definitely want to see what's in it if you do decide to chase this - serious :P).

Finally, search for "cheetah project" - the 2nd top-level result is messed up, apparently the Chinese (Unicode) got scrambled. Just a note; you may already be aware.

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#273
post #34

Pascal - still use it today. I started with Turbo Pascal 3.0, went through several versions of Borland Pascal (DOS and Windows), several versions of Delphi, and am now using FreePascal. I do most of my work on Linux nowadays. Pascal still gets everything done and after 20+ years I am really fluent in it. Did a little bit of Javascript with Node.js, also looked at Golang. While I did like some aspects of them, there w…

Pretty cool! Ever tried Modula-2 or -3?

Did some baby steps in Modula-2 out of curiosity about 20 years back. The IDE and compiler were horrible compared to Turbo Pascal, so I went right back to that.

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#274
post #113

Most of my programming has been done in pl/sql. It's still the best language for interacting with a relational db I've seen. I've just started using c# and when I pick up some more linq I think I might like it. I also program in javascript, java and c is just that plsql has been the best way to get stuff done for me working with enterprise db apps since the late 90s.

For the past year I have been working in PL/SQL it's like being on a different planet. The language is clunky and difficult to work with. The culture is weird (everyone uses TFS for version control, for example, if they use a VCS at all). The tooling is awful. No parser is available, meaning linters are only included in bulky GUI apps (TOAD is the worst, most unusable piece of software that I still use on a daily bas…

I used to use Emacs and SQL&*Plus, but after trying SQL Developer have stuck with that.

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#275
post #272
post #34

Pascal - still use it today. I started with Turbo Pascal 3.0, went through several versions of Borland Pascal (DOS and Windows), several versions of Delphi, and am now using FreePascal. I do most of my work on Linux nowadays. Pascal still gets everything done and after 20+ years I am really fluent in it. Did a little bit of Javascript with Node.js, also looked at Golang. While I did like some aspects of them, there w…

This is pretty awesome, and the speed is great. I really like obscure search engines, because their (comparatively :P) tiny indexes mean they'll return significantly different data to what say Google or Bing would return. If there's one thing I would definitely vote for with projects like this, it would be... an API. In a world where virtually every search engine is built around the idea of controlled, non-open acces…

Non-ASCII characters are indeed messed up. I wrote the HTML parser about 15 years ago. Back then my programming style was so bad, that I'm afraid nothing short of a complete rewrite of the parser will be able to fix it.

The Archive.org crawl is way too old to be of any use. And the Common Crawl corpus is only marginally bigger than what I crawl myself. There are currently just over a billion pages in my search-index and I can recrawl those about every 45 days. Crawling right now at about 650 URLs/s and 200mbit/s. Only about 60% of URLs crawled end up in the index. The rest are errors, timeouts, redirections, etc.

I have been thinking about adding an API. Rate-limiting is a must as you have correctly said. I'm already in a constant fight against SEOs who try to scrape the search-results and who apparently don't see anything wrong in making 10+ queries/second.

The API would definitly not be a free-for-all, but sort of like "send me an email and describe what you want to do with it, and if I like it I'll give you an API-key".Together with a primer on what not to do of course. :) If people do more than a certain amount of queries/month, then it would also have to be paid.

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#276
post #113

Most of my programming has been done in pl/sql. It's still the best language for interacting with a relational db I've seen. I've just started using c# and when I pick up some more linq I think I might like it. I also program in javascript, java and c is just that plsql has been the best way to get stuff done for me working with enterprise db apps since the late 90s.

For the past year I have been working in PL/SQL it's like being on a different planet. The language is clunky and difficult to work with. The culture is weird (everyone uses TFS for version control, for example, if they use a VCS at all). The tooling is awful. No parser is available, meaning linters are only included in bulky GUI apps (TOAD is the worst, most unusable piece of software that I still use on a daily bas…

There's nothing stopping you from using version control and having an automated build and unit tests. We always have everywhere I've worked before.

Check out steve fuerenstein's books and websites for more modern ways of working with pl/sql http://www.stevenfeuerstein.com/

I've normally worked with pl/sql developer which has some great tools-lint, beautifier,templates,import export data generation etc. There are a few good open source libraries eg pl/json but you have to look around.

You can always easily call out to java or c if you want to work with other libraries.

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#277

Bash. I'm obsessed - so much so that I'll solve more complex problems taking 3x time rather than falling back to Python. And then there's bash one-liners, they're the best!

Obfuscated oneliners are where it gets really, really fun though.

I love making these, because they can be edited and iterated directly from the terminal prompt, and you can just paste them from the clipboard to see if you like them and want to keep them.

For example, the URL this oneliner spits out is actually real. The technique works almost nowhere now thanks to HTTPS (it's one of my poorest oneliners), but it's hilarious to show people who don't know about networking.

  $ echo http://google.com/trends | (E=echo\ ;S=sed\ ;read a;x=($($E "$a"|$S's,^\([^:]\+://\)*\([^/]\+\)/\(.*\)$,\1 \2 \3,'));$E"${x[0]}$(i=32;o=0;for x in $(ping -c1 "${x[1]}"|$S's/[^(]\+(//;s/).*//;;s/\./ /g;q');do((o+=(x*(2**(i-=8)))));done;$E$o)/$(for((i=0;i
If you use VT100's alternate character sets you might like this character map which shows all the character mappings at once (man console_codes for the idea behind B0UK)

  (((r=255/((${COLUMNS:-$(tput cols)}-16)/18)));C="\e[38;5";Z="\e[0m";A="\e(";for((i=-1;ir-(\!(i+1)+1)))&&X="$X$C;177m |";((\!(i+1)))&&X="$X$Z 0UKB ddd/ooo/hh"||{(((v>32&&v160))&&printf -v c %x $v;printf -v X "$X $C;160m${A}0\x$c${A}U\x$c${A}K\x$c${A}B\x$c $C;120m%3d$Z/$C;214m%03o$Z/$C;33m%02x" $v $v $v;X=${X//\%/%%};} done;printf "$X\n";done)
Then there's this one I won't tell you about, which #bash suggested I put in the channel bot (!! wow) when I showed them... run it in a 256-color terminal. :P

  E=echo\ ;P=printf\ ;M=$'\e[0m';a(){ $P"\e[38;5;2${z}5;48;5;${1}m %4d $M" $1;};Z=$E$M;for i in 16 93 160;do ((r=(n=\!n)*2-1));for((x=0;x1?3:5),j

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#278
post #275
post #272

Earlier quoted context omitted.

This is pretty awesome, and the speed is great. I really like obscure search engines, because their (comparatively :P) tiny indexes mean they'll return significantly different data to what say Google or Bing would return. If there's one thing I would definitely vote for with projects like this, it would be... an API. In a world where virtually every search engine is built around the idea of controlled, non-open acces…

Non-ASCII characters are indeed messed up. I wrote the HTML parser about 15 years ago. Back then my programming style was so bad, that I'm afraid nothing short of a complete rewrite of the parser will be able to fix it. The Archive.org crawl is way too old to be of any use. And the Common Crawl corpus is only marginally bigger than what I crawl myself. There are currently just over a billion pages in my search-index…

Ah. 2001 was... the era of HTML4, more or less, so it's still seeing the majority of page content, but... no Unicode. I see.

I figured old data was uninteresting, but TIL that crawling data yourself is not impossible. I mean you have to come from a thousand IPs, browser UAs and cookie states to find everything thanks to the sad state of things, but wow, I didn't realize 200Mbps could do so much. :D

As for the errors et al, that makes me think, I wonder what would happen if you saved that data and folded it into the seed list (with maybe 3 or 4 URLs up the chain leading to that link) for next run.

Agh... so you already have leeches :( all I can suggest is maybe mixing up your HTML, or maybe putting your site behind CloudFlare and, if there's an option(?), setting the attack detection sensitivity all the way up. I have no idea if they can do this.

10 queries/sec... that's... not going to be too great on the hardware :( I mean these people can just crawl the info themselves and get more up-to-date content >.By "free" API, I don't mean free-for-all "here, have at my bandwidth/hardware" xD - I mean more in the sense that curious shy CompSci types can maybe autogenerate themselves a basic-level API key to experiment with ultra-low-rate data requests here and there, and request a threshold upgrade on their key if they think they have an interesting/justifiable use for the data.

And it would be great if this could be a revenue stream! Have you ever featured the site on HN?

PS. Constructive criticism on design: I would personally alter the page styles a little; it currently looks nothing like what I associate "search engine homepage" with based on what I've learned to expect, and the page style, while very nice, makes me feel like the site is a blog, not a dynamic search engine.

Re: Ask HN: Do you use an old or 'unfashionable' programming language?

#280
post #97

Earlier quoted context omitted.

That rewrite sounds like a great project to pair with junior developers on. It has all of the optimal features: 1) You pretty much have to TDD, but it isn't hard to because you can start by writing tests that the old software passes as your "spec". 2) It actually matters if it works. As a junior dev, one of the hardest parts about giving a shit was that the tasks I was given often didn't matter. The quality of my cod…

All excellent points; I don't disagree with anything except for the last one. > Large company with resources and domain to take a long-term outlook on the problem. My father works for company X that sold this system to banks; UBS and the other big ones didn't have a hand in the development other than testing and specifications. Additionally, company X and their clients suffer from enterprise-levels of political dysfu…

To elaborate a bit further, I feel like the best way of stating it is that in large organizations changing or allocating resources to anything (no matter how obvious) needs a sponsor in the form of a person.

That sponsor typically signs on because they really believe thing needs to get done and/or expect that if thing succeeds then they will look good.

Rewriting working code is a hard project to find a sponsor for, unless you're lucky to have software engineers high up in the hierarchy with clout.

Post reply on HN