Hacker News new | comments | show | ask | jobs | submit login
NBA GO – Watch NBA in Your Terminal (github.com)
402 points by xxhomey19 7 months ago | hide | past | web | favorite | 113 comments

First of all, cool project. Looks very nice. And kudos to nba.com for making their data so easily accessible via JSON (and perhaps other methods, didn't look too closely).

Personally, I have little interest in sports in general. And I find that the interest ratio is much lower with those interested in technical fields than others. However, obviously proven by this project and life experience, there are definitely those who are very interested in both sports and STEM-like disciplines. So I wonder: what makes one become attracted to sports or conversely what has caused certain groups of people to be apathetic? Why is most of the geek population uninterested? And lastly, what causes certain people to seemingly be an exception with equally strong interest in both areas?

I assume my life experience is congruent with the hacker news community, but I'm also keen to know if my observations don't mirror others!

I found my interest in sports went up when I understood the rules a bit more deeply, and some of the reason why. For instance, basketball for a long time looked really silly to me, and I thought I knew the rules because "we had played some in gym class", but it turns out that I knew almost nothing about it. There's a lot more to the rules about who can be where, and a lot of rules around what your feet are doing and what it means for them to be set or not, that makes the game much more interesting. Still not my favorite sport, but I can watch a game now without being bored, because my boredom was really being lost without realizing it. And what previously struck me as random gyrations where everybody is still, then suddenly everyone on both teams are in motion make much more sense to me. (Basketball has a lot of phase changes between the teams being solid and liquid, to stretch a metaphor.)

Similarly, while I understand why (American) football can look like 11 armored clowns randomly bashing into each other, it is arguably the most interesting and strategic game on offer by the time you understand the rules, the why of those rules, and the resulting strategies, metastrategies, statictics, etc. Baseball is also more interesting when you understand more of the whys of what is going on than just "Man hit ball with stick and run fast".

Of course there's no great virtue per se in loving to watch sports, so I'm not advocating that anybody seek this out, but if you are interested in what all the fuss is about, I recommend learning more about the sports and the rules and the second-order effects of the rules and such before writing them off. Unfortunately, I do not have any references; I did it the long, slow, hard way.

(Contrariwise, while soccer is fun to play, learning more about it has still left me pretty cold to the sport.)

Same with the rules, especially for basketball. However, this just made all basketball games interesting to me.

To this day, I really cannot empathize with "having a team." I get that it comes off as neckbeardy or holier than thou, but it just seems like arbitrary tribalism - maybe because I moved around a lot as a kid(from BIG SPORT cities, too! Green Bay to Houston to San Francisco), but I never really understood why people prefer "their team" (other than the obvious, logical reason). Maybe better - I can't empathize.

This isn't for lack of trying - when I grew up my dad and his friends would yell at the TV. That looks fun! They're so excited and engaged, why can't I feel that for a sport? Genuine emotional response to whatever "our team" is doing? I mean it's not like my life is empty without it but I've always wondered why others can feel strongly enough to shout at a TV but I never could. Not for sports, esports, not even when a couple of kids from my class were on ninja warrior.

It makes it more interesting to have a team versus being a casual observer. Traditionally you end up being a fan of your local team because that's what your family grew up on and those are the games you had access to each week.

Some people tend to like specific players which shuffles their teams around, sometimes from year to year. I think this has been a change over the years - each league wants more viewership on all their games, not just the bigger markets. So you can drive that by 1) running and promoting fantasy games and 2) promoting individual players.

If you play fantasy football you end up shouting at the TV for games you normally wouldn't care about. But then you end up liking some of these players so you kind of root for their team too.

Put some money on a game or try fantasy sports if you like sports but don't have any horses. It can be addicting but it's fun, especially in an office pool. I would have never watched Houston Texan games but I had Hopkins & Fuller and it was cool watching DeShaun Watson emerge from the backup role (really unfortunate he got knocked out of the season recently though) and they had some unbelievable games.

I think it has to do with the human desire to be apart of something bigger than ourselves.

Major sporting organizations (MLB, NFL, NBA, NHL, etc...) are very good at selling stories of players/teams and having people emotionally connect with players/teams at that level. This is what leads to favorite players which can lead to favorite teams.

Another aspect is region. For example, I've grown up in Seattle since I was a toddler. Everyone around me is a Seahawks fan. I am a Seahawks fan. It'd be too much to follow multiple teams for me, but some do.

This gives me something in common with those around me, and having team spirit and dressing up on Sundays is fun. Hanging out with friends on Sundays, watching football, and shooting the shit is a lot of fun and sometimes the only time we can all make to see each other as we get older and our lives drift in their different directions. That bit was a little off tangent but it does help illustrate why someone may like sports.

I'll agree that learning the rules really helps. When you're watching two different teams line up against each other, attempting to read what the other team is trying to do and executing against it in real time is exhilarating! There are several aspects of the game that have to be accounted for on every single play. It's a mental, physical, and emotional game.

Hope this helps you (or any reader) understand why someone may enjoy to watch sports. Go Hawks! :)

It's our tribal nature. We like to be part of a group, and have enemies that are not part of our group.

Yes, but why don't I feel that? I'd like to, for sports. I think.

I find the tribalism comes from going out and watching the game with strangers that also are excited about the same thing. Have some beers, loosen up, get into it.

> I really cannot empathize with "having a team."

Agreed, always reminds me of this classic Mitchell & Webb sketch: https://www.youtube.com/watch?v=xN1WN0YMWZU

You like the Sportland Sports? They made so many points last game!


Personally, I love sports and exercise. I grew up playing basketball, football, baseball, soccer, etc. If I don't exercise (and maintain a good diet), it dramatically negatively affects my work. My mind is clearer, I'm able to focus longer, etc. Plus, a mid-day trip to the gym makes my afternoons much more productive.

In terms of sports, I like the competition, I like the strategy, overcoming the odds, and the idea of dedicating your life to mastering a skill. Though, I have strayed from football recently due to brain trauma concerns, and my kids aren't allowed to play it.

I also coach my kids basketball teams, which is a ton of fun, and has helped me with leadership and planning, plus is some extra exercise for me!

> Why is most of the geek population uninterested

This isn't my experience at all. I have worked in academia, and there is a nearly universal interest in sports, particularly the "local" college teams (Ohio State and Wisconsin, in my case). My PhD department could have fielded a competitive track and field team. At my current job as a software engineer at a prop trading firm, EVERYONE is interested in and plays sports. We have many corporate teams, our TVs often have sports on, and the devs behind me have an encyclopedic knowledge of baseball. Like literally, it is faster to ask one guy about baseball going back to the 50's than it is to google the question. The other guys on my team are very active, work out regularly, and play sports in their free time. The stereotypical "geek" in a Doritos-stained hoody and an extra 200 lbs ALMOST doesn't exist here.

For me, it is having a physical yin to the mental yang of problem solving all day. I meditate as well, but just DOING something physical is very cathartic, and meditative in its own way.

In terms of why some people get interested, it is probably environment. I like and play sports, so my kids do too. I don't push them to, but if Daddy is watching and excited about basketball, they will be too probably. One of mine isn't AS excited about sports, but is loving martial arts now, which I have never done.

This is off-topic but you seem like a good person to ask: I've been thinking a lot recently about college football recruiting and machine learning. Do you know of any universities or companies working on this problem? Specifically, I'm interested in the possibility for lower-ranked schools to use ML to identify and recruit diamond-in-the-rough players who won't get attention from the top programs.

If you make it, I know a D1 Engineering school who might buy it

I think you might be missing all of the tech people who love sports, but know you don't like them so they don't talk about them with you.

I am a software developer, and my work has a large community of sports fans. However, we keep our sports talk to some special slack channels for sports, because we know there are a number of people who really don't care for sports at all. So, you might be surrounded by geeky sports fans that you don't even know are there!

As for why I love sports, there are many reasons. I am a geeky sports fan; I love sports stats and analytics. Baseball is perfect for this, but other sports have their stats, too.

I love how sports are very logical; there are clear, well defined rules that everyone knows. There are specific and finite objectives, and there is never any uncertainty about what success is. I love the strategy involved at trying to figure out, within those confines of the rules, how to achieve that victory.

I also love playing sports; I don't generally like exercise (e.g. running, lifting weights, or other only-for-exercise activities). I do love playing sports, though, because my activity has a purpose (trying to win). I love competing, and that is in sports, video games, board games, etc.

> Why is most of the geek population uninterested

I wonder if this is more antidotal than factual. I know a lot of STEM professionals who enjoy participating and watching sports. I know a lot who don't, too... just saying, I wouldn't be too quick to assume it's a fact, or causal. (I'm a bit biased... I was reading up on long short-term networks last night while watching the Lions take apart the Packers).

I think this is where I fall. I know a lot of tech people who are also sports fans, and I know a lot of non-tech people who really couldn't care less about sports. I think the "STEM professionals are pasty nerds who know nothing of sports!" stereotype is played up both by some people outside STEM professions who still seem to think Revenge of The Nerds was a documentary and by some people inside STEM professions who will tell you they're above such base tribal loyalties and then lecture you on why using Sublime instead of Vim makes you a neanderthal.

I think you mean anecdotal.

For some reason, while most sports have never interested me, or most 'geek' types I've known, basketball has always seemed to be an unusual exception to the rule, myself included.

I don't personally follow, or play, team sports. But if I did, it'd absolutely, most certainly, be basketball.

I wonder why that is?

I always loved basketall, since my family loved. I aalso played basketball as a child, since I was always very tall (6"1' at age 13!). I was sometimes good, sometimes bad. Very streaky.

In many ways basketball is more skill and tactic based than something like football, and I suspect that has an influence. I also think bjj is disproportionately popular among programmers for the same reason

I think what attracts people varies widely - I grew up watching Michael Jordan, drifted away from basketball in the late '90s and early '00s (although I loved Allen Iverson), and came back to the game in college. I still like the things I liked when I was a kid - NBA players are at least in the conversation for "most athletic human beings on earth", and the physical acts they can pull off are amazing. As I got older, I also started to appreciate the strategy better. The overall level of strategy on offense and defense has also dramatically improved in the last 10 years or so. And the advent of some new technologies has made it easier to notice interesting facets of the game - breakdowns like this: https://cleaningtheglass.com/lebron-reads-the-defense/ weren't widely available even a few years ago.

Once you start to see the little things like that, the game gets a lot more interesting. The easy way to know some of those quirks and tiny elements is to grow up playing the game, which is where a lot of people's fandoms come from. But I think sports leagues/announcers/media could make more of an effort to highlight those games within the games, rather than shooting for the lowest common denominators, which they frequently do.

I never played them or watched them growing up but have come to love them recently, in particular, college football. As a geek, I wrote them off as a dumb pastime for the masses, but as a recent convert, I've come to appreciate how incredibly cerebral and complex the games are. The play-calling, strategy, and on-the-fly decision-making required to consistently win football games is tremendous and really difficult to achieve in the major conferences.

There are just so many intriguing facets of these games and you won't appreciate them by flipping through the sports channels, but give it a chance: pick a local college team and go to a game. Try to find a radio station that does play-by-play coverage of the action and listen to that on your headphones. Football is great because the excitement of the big plays will hook you but the strategy will keep you. Like a good programming language, you can get some easy early excitement but find long-term enjoyment as you delve deeper and deeper into the details of what's going on out there.

I never watch sports by myself, only when with non-nerd friends. I play board games and nerd out with people who have no interest in sports and watch sports with people who have no or low interest in nerdy things - I'm sort of in the middle - it's a healthy balance.

IMO, picking and caring for a professional sports team plays the same role as religion - satisfies some kind of deep primal urge to "belong". I grew up in Europe, so soccer (it's football, dammit!) was that religion - the history of the club, the songs, the chants, the way you dress for the game, the people you meet and hang out with - you feel like you belong, like you're part of a family.

The actual event is basically modern gladiatorial combat - we get to blow off some steam without killing each other. I'm positive murder rates would be way up if it weren't for competitive sports.

IMHO, but as a (rather) sports-loving geek, I think a lot of it is the fact that the aspects of sports that (stereotypically) won't interest geeks get emphasized a lot in news/media/sports coverage - a lot of the coverage focuses on the in-the-moment athletic achievements of players, whereas there is a lot of strategy below the surface. It's actually totally reasonable, then, to basically look at every sport as a real time strategy game. Some sports are really good at this (IMHO, this is why I like soccer more than many Americans), but even the NFL can enjoyably watched through this lens if you'd really like to view it that way.

The problem is that this type of thing isn't often really covered in sports broadcasts, which makes it hard for a viewer to connect with.

I have always been interested in STEM, even growing up, but I was definitely more interested in just having fun and being cool all the way through college. I played sports my whole life at a pretty high level and basically did the bare minimum in school to get into an OK college for a degree. After I basically stopped playing competitive sports I started focusing all my efforts into programming and have completely switched. Still, I pride myself on my hand-eye coordination (I think those who are coordinated are more pre-disposed to like sports; wonder what the breakdown is there, like how many programmers are also coordinated?) and the fact that I'm still pretty good at sports and enjoy playing them. Maybe I (or people) just like to be good at things.

I think it's too bad that more coordinated nerds don't try sports. I was able to play at a much higher level than my physical abilities by simply out-thinking a lot of guys. I'd know the last 3 times I faced a certain defender, the things he tried to stop me with, and what he'd likely be expecting me to try the next time. I always had felt like this gave me a bit of an edge, even with freak athletes that should have crushed me.

If you can just learn the game and be reliable (don't make stupid mistakes) you can be an asset. You also get to feel the camaraderie that comes with winning and losing as a group, and why teamwork isn't just a buzzword that get's thrown around by recruiters.

I have watched sports on-and-off all my life, but was never really that interested or involved. My girlfriend got really interested in the Warriors over the past 3 or 4 years and learned about all the players. I started to watch more often and, following her interest, for the first time learned every players' name and could identify every one of them on the court all the time. This makes watching completely different and much more stimulating for me.

I know the different playing styles of the players. Watching a player behave like you anticipate them to activates some deep intellectual pleasure zone I had never had with a sport before. Also, when you know a players normal level of play, when they do something special, it has more impact.

Once you know each players style, you can then start to think about and imagine how the five different players on the floor are going to behave as a group. When someone subs in, you can change what you think the playing is going to be like and when you see that is the case, it is pretty cool.

I just know the Warriors players this well, along with a couple of the super stars like Le Bron and Harden. Some sports fans know everyone in the league. That must be an even more intense and interesting intellectual feeling than what I get out of it.

I personally grew up with the Warriors, being rasied in SV. I started getting intersted in sports at the same time as your GF, and now I am a super fan of everything NBA.

BTW, Lets Go Warriors!

One of the heaviest influences is how much/long a person played sports growing up. Most STEM people didn't play sports, or at least not very long growing up. A lot of people who grew up playing sports don't end up in STEM areas. Then there are some people who grew up playing sports and did end up in STEM (like myself).

This is obviously at a general level, it doesn't apply exactly to every individual but overall it's pretty accurate from my experience.

My experience is a sports fan first, playing sports as a child/teen, watching sports, bantering with other men in my family about players/teams etc. The "normal" US male cultural experiences that sports provide. Then I became a techie/geek in late teen years, teaching myself to code, coding as hobby, etc. What I found is it all has to do with time and where you want to spend it. To keep up to date on sports, it's a huge time investment. To learn to code and continue building stuff, it's typically a large time investment too. I couldn't do both. Really, I didn't want to do both. I felt more productive building things and while sports are entertaining, it's a large unproductive time sink. I have since tuned back into sports and balance the two a bit. I still think it's overly unproductive but I just try to watch the big games, or I tune in at post season, or just the games of the teams I support. I usually follow this pattern; MLB & NBA post season, NFL all games for my team & other post season sometimes. I also usually DVR them and avoid spoilers. Watching games in play by play format is a huge time savings.

Viewing sports and partaking in sports are two different things. I doubt many people in software are natural athletes (I'm generalizing here), but I don't see any particular deterrence from them being a fan of sports as a passive viewer - other than maybe their time will already be consumed with other intellectual pursuits.

I find the NBA to be full of things that draw my interest: it's all about stats, strategy, and basic data projections which is at least half of what draws my interest.

I'm always watching box scores and other numbers while watching live games and even when looking at yesterdays games I delve deeper into the stats more than I watch the highlight videos of fancy dunks (I do that too, it's just not my first stop like most people).

Sites like http://fivethirtyeight.com/ have made it easier to be a data science nerd and like sports.

Once you really get into the sport there's also plenty of advanced strategy and in-game mechanics that are invisible to casual viewers. There's way more going on in a game of basketball than guys throwing the ball into a hoop and running around.

Here's an example of more advanced basketball that is employing strategy, instead of fancy trick passes and dunks, something you wouldn't automatically notice as a non-fan casually watching: https://www.youtube.com/watch?v=SSHt_tyZ25E (ball movement is used to draw the defenders into the middle, creating opportunities for shooters)

The other half of it was that it was the game I played with friends grow up. I feel that you need to have played a sport to truly appreciate the talent and skill involved when you watch as a fan. And it's possibly many smart kids were too busy to have the opportunities to play them, beyond chucking a few balls into the net for fun. They just don't get the opportunity to see the depth and complexity in the sport as the general population.

Yep. I especially love how offenses counteract defenses, and vice versa.

Edit grammar

The nba data used to be much more interesting when you could retrieve the SportVU [1] data. With that data, you could do all sorts of interesting data analysis, like player vs player match ups, team tactics, changes in fatigue, etc. The possibilities were endless. But, now that data is only available via expensive subscription which isn’t worth it for hobby purposes.

Data from previous seasons is still available. Check it out if you’re into that sort of thing.

[1]: https://en.m.wikipedia.org/wiki/SportVU


Many (perhaps even most) hackers don't follow or do sports at all and are determinedly anti-physical. Among those who do, interest in spectator sports is low to non-existent; sports are something one does, not something one watches on TV.

Further, hackers avoid most team sports like the plague. Volleyball was long a notable exception, perhaps because it's non-contact and relatively friendly; Ultimate Frisbee has become quite popular for similar reasons. Hacker sports are almost always primarily self-competitive ones involving concentration, stamina, and micromotor skills: martial arts, bicycling, auto racing, kite flying, hiking, rock climbing, aviation, target-shooting, sailing, caving, juggling, skiing, skating, skydiving, scuba diving. Hackers' delight in techno-toys also tends to draw them towards hobbies with nifty complicated equipment that they can tinker with.

The popularity of martial arts in the hacker culture deserves special mention. Many observers have noted it, and the connection has grown noticeably stronger over time. In the 1970s, many hackers admired martial arts disciplines from a distance, sensing a compatible ideal in their exaltation of skill through rigorous self-discipline and concentration. As martial arts became increasingly mainstreamed in the U.S. and other western countries, hackers moved from admiring to doing in large numbers. In 1997, for example, your humble editor recalls sitting down with five strangers at the first Perl conference and discovering that four of us were in active training in some sort of martial art — and, what is more interesting, nobody at the table found this high perecentage at all odd.

Today (2000), martial arts seems to have become firmly established as the hacker exercise form of choice, and the martial-arts culture combining skill-centered elitism with a willingness to let anybody join seems a stronger parallel to hacker behavior than ever. Common usages in hacker slang un-ironically analogize programming to kung fu (thus, one hears talk of “code-fu” or in reference to specific skills like “HTML-fu”). Albeit with slightly more irony, today's hackers readily analogize assimilation into the hacker culture with the plot of a Jet Li movie: the aspiring newbie studies with masters of the tradition, develops his art through deep meditation, ventures forth to perform heroic feats of hacking, and eventually becomes a master who trains the next generation of newbies in the hacker way.

ESR has long confused "himself" with "hackers", which has had a negative partially-self-fulfilling effect on the community.

More recently, it would seem that you could add various barbell-using disciplines to the list of physical training areas programmers are drawn to. Powerlifting, weightlifting, etc.

People like the camaraderie, and as other folks have mentioned here, understanding the rules of a game definitely make it interesting beyond the athletic endeavor.

This is a little self-serving, but for a few years until I moved, I maintained a stats page for a city beer-league softball team, made almost exclusively of current and former STEM grad students.


I'm a physics PhD/software engineer and I would still say that most of my colleagues/fellow students have shown an interest in sports over the years.

But personally... it's not for me. I can begin to glimpse what people find so fascinating about it, but I think I'm hardware-incompatible with the pacing of most sports.

The exception being olympic events, because they tend to be short and intense.

For my whole life the enjoyment of watching sports has been essentially a black box. I can hypothesize a variety of compelling reasons why someone would enjoy it, but I have zero empathy there. It's a complete mystery. So much so that I wonder if there's a genetic component to it. If so, you and I certainly seem to be the outliers.

Personally I grew up playing sports and competing, and I still enjoy watching people compete. I'm not a super fan of anything in particular, but I do enjoy the entertainment value of watching "the best" compete.

Then again I don't really identify as a geek. I just like technology and building stuff and software was a natural fit for me.

I think I'm different in my preferences from most people, but I don't want to know the score for anything I haven't watched yet.

I realize I'm in the minority, judging from the amount of effort it has taken to convince my phone to stop popping up notifications ruining every Seahawks game for me from a dozen different sources, and from browsing the Formula 1 website with my eyes closed in the hope of scrolling down to find the local time of the race without seeing the headlines that will ruin qualifying for me (or the race itself if it was an early one).

I really just want the world to stop telling me scores for everything.

And on the topic we're discussing, it would have been pure awesome if they had instead intercepted the streaming video feed and converted it to ASCII art in realtime. That's a project I could get behind!

Back in the day, early 80s, I remember my father not wanting to know the rugby league scores.

Generally, the match of the day was played at 15:00 on a Saturday afternoon. However, it was also replayed early evening, around 19:00 or 19:30 I think.

My father would avoid the radio all afternoon and the evening 18:00 news (we only had two radio stations and two TV channels). Woe betide any child who let slip the score before he had a chance to watch the evening replay.

Life seemed simpler then.....

I was in a remote corner of Kenya for the Superbowl this year, staying with some friends who have a place there. They're English, and the least likely people you could imagine to follow sports, so I figured I was safe.

But sure enough, I'm sipping my coffee on Monday morning and in walks Ellie saying "are you surprised that [REDACTED] won the Superbowl?"

First off, how could you possibly know that the Superbowl was even a thing, let alone find out about it here in BFE Africa, or decide to tell me about it.

And, of course, back in civilization with NFL Gamepass a few weeks later, I spent the entire game thinking. Ah... She was just messing with me...

Definitely messing with me...



I think I'm different in my preferences from most people, but I don't want to know the score for anything I haven't watched yet.

Are you serious? No one wants to know the score. It ruins the whole point of watching a sporting event.

I have Sling TV to watch my NBA team games this year. About 1/2 the time I hit "watch" (with the "dvr" option) while the game is still going it jumps live, rather than ask me if I want to start from the beginning. So, I have to hit "watch" then back, then watch again, where it asks me. Seriously, WTF Sling?

Don't you control the notifications on your phone? I use the ESPN/Scorecenter app and it even allows you to turn off the final score notifications for your favorite teams. When I DVR a game, I simply avoid social media and "mainstream" news so I see no spoilers.

Google Now or whatever comes preloaded on Nexus phones will figure out things you like and start sending you notifications. They're really hard to kill completely and very determined to tell you sports scores if you ever do a Google search for a team name.

That sucks, I didn't realize how pervasive Google Now had become (as I'm an iOS user)

I'm the same way. If you google "spoiler free scores" there are many websites which cater to people like us. wikihoops is one that I like, users can vote on games so if you have league pass you can find out the games you should watch from the night before.

I'm much the same way, but you should try f1calendar.com for session timing.

I'm looking at writing some apps in the sport area right now. It's quite tricky for rights reasons to get decent coverage, but being able to manage spoilers better would be interesting, and in fact isn't just useful in the domain of sports: TV series, film series, books (by the chapter), etc.


On the opposite end of the spectrum (JS heavy website) I've built http://eaganr.com/nba which visualizes NBA play by play data. Decent alternative to NBA.com since that site is no longer usable.

Very cool site! There's a bug where when you load the page it shows last night's date but the games are for today. When you then change the date back and then forward it shows the correct games.

I love the lines that show when players were in/out. Really helps to visually what +/- stats tell you.

Very slick - I'm a bit jealous. I've tried making a few NBA visualization apps that never got this far. FYI, getting 501 errors when trying to view videos.

Showed this to some of the dev team / folks around NBA. Overwhelming good response. Good job!

Only qualms might surround ToS for `stats.nba.com`:

> You may download material displayed on the Site to any single computer only for your personal, noncommercial use, provided you also maintain all copyright and other proprietary notices contained on the materials. You may not, however, distribute, reproduce, republish, display, modify, transmit, reuse, repost, link to, or use any materials of the Site for public or commercial purposes on any other Web site or otherwise without the written permission of the Operator.”

But I don't think you're likely violating this.

You work for the NBA?

No; I work in on the Turner side of Adult Swim Digital... but I do get to talk to / see some of those guys pretty often.

I wrote a similar MLB application in C# over the summer:


I, for one, love terminal apps like this. We need some one to do a hockey one next.

This looks so slick it makes me wish I was interested in the NBA just so I can use it! It's great to see new and modern CLI tools being developed, I just hope the fact that it's node-based doesn't mean it's heavy as a regular desktop app.

Fun project idea: implementation of the stats.nba.com API which provides simulated, or fantasy games.

Two use cases:

1. Why wait for the actual NBA games? Instead, follow a simulated league that “plays” as many games as you want to consume (but the games are played at real world speed).

2. You, and your friends, are the managers! Follow along as the results of your management decisions are played out.

This is a neat idea. You could have a video game like NBA 2k act as the frontend for the data coming out of stats.nba.com backend, and simulate - in realtime - the actual games as they progress. If the latency between the frontend and the backend is reduced enough, you'll effectively have a "live" game played by simulated players that is more or less a replacement for the real thing. You could then charge people to watch your simulated games.

Like Football Manager?

Or, shameless self promotion:



Currently no terminal UI, sadly. PRs welcome!

I should have known the basketball-gm guy was on HN! Awesome work dude.

Maybe you can adapt this NBA GO implementation to consume data from your software?

Or GM mode from NBA2k.

I’ve heard of NBA2k, but never played it.

Are you able to follow the simulated games without using your game console? Or, asked another way, does it run in the cloud?

I'm never going to use this, as I don't keep up with basketball, but this is a really cool idea.

I'm never going to use this as I don't want to install node just to run command line utilities, but I really like the way the interface is presented.

This is a good point. Just out of curiosity I decided to check it out - it has 905 dependencies totaling 136M on top of the runtime, that seems like a bit of a stretch for something seemingly simple.

I'd be curious what that could be shaken down to with pkg and have it distributed as a single blob

edit: the answer with pkg and node bundled is 64MB and about edit: 2.4MB rolled up with the bugs fixed

It is very cool, but I thought it was going to be ASCII art animation, so I was a little bit disappointed due to unrealistic expectations

This looks sweet, but does anyone actually use terminal tools like this?

I use `curl wttr.in` frequently.

Ooooh, awesome! Is there a comprehensive list of these somewhere?

Heres a list (not exactly comprehensive but has some interesting ones)


Very nifty! It's surprisingly advanced, including location search and a bunch of other options.


I do, actually. I simply don't have time to watch all the games I'd like, which is fine, but if I'm going to be on the computer anyway a scrolling terminal play-by-play is ideal: it's minimal and easy to read, it doesn't slow down the computer with some ad-ridden live-updating website, and it's subtle in case I need to hide it. Same reason I use pianobar over the website or phone (plus no ads).

Moreover, the only thing I miss since cutting the cord is live events (sports, states of the union, olympics, etc.). It's not worth it to pay the various leagues (see above, plus I'm a Knicks fan...) so any little bit helps.

Sorry for you man. It’s tough being a knicks fan.



It's a long story, but basically the Knicks were fantastic in the 90s, but since 2000 have been mostly a garbage fire. They're a historic team located in NYC, a massive market, and play in Madison Square Garden, a fantastic location, yet despite all that have been miserable. Poor management decisions — trading draft picks to apt for over-pay aging players, for example — is a big part of it.

I half expected to see something that took streaming video from the games and converted it to to ascii art on the fly.

What is the terminal they use in the clips?

This is awesome even though I am not interested in the NBA that much. It has cool tools. And looks very light.

Any similar project for soccer fans?

Take a look at soccer-cli: https://github.com/architv/soccer-cli

Show HN (7 points, 798 days ago, 4 comments): https://news.ycombinator.com/item?id=10153993

Thanks for the response!

This is really cool. Would love to see something similar for NCAA

Agreed. Unfortunately, it's a lot more difficult to get access to NCAA data. Most of the good APIs you have to pay for, which reduces the number of projects people will create.

That's awesome, only missing thing is being able to hookup my League Pass to it to play games live but I don't think they even have an auth system to allow it.

I love CLI projects that use the terminal as a live display. Can anyone point me to some links to awesome terminal projects that are similar to this?

I love this thing. Instead of trying to get the info through 20GB of ads being served, just a simple display that looks great and could run on a toaster.


Love the NBA and am a cord cutter... this is so slick and well done. Really cool project. Going to try it out for sure.

Respect!!! This is dope and creative. Thanks for making this.

Wish something like this existed for college football.

This is awesome man, and a great idea. Nice work!

Cool, is there any tool like this for NHL?

8 bit video would've been so cool

You should post it to /r/nba

This is awesome! Such a cool tool

Really cool project. Good job.

Theres also an software similar to this that can be installed on a smartphone called Yahoo Sports.

But then I have to context-switch screens to my cell phone.

This is beautiful


nice job, but single purpose apps like this are kinda meh...

Unless the ONLY sports you care about is in fact the NBA. Otherwise, you'd still need to visit some sports site for updates.

I would imagine this can be easily made sports agnostic? Maybe not... Maybe not all the leagues have a realtime API or they do not conform to the same interface.

Do you have issues with calculator?

Usually a comprehensive app like you are talking about gets built onto until it reaches all sports. Can this not just be the first step?

I regard the calculator as feature complete.

This can be feature complete for individuals who represent the cross section of NBA and terminal fanatics. Anyone else outside of this cross section, the dependency on the likes of espn.com is still there, and will likely have it open in an adjacent browser.

Expanding your calculator analogy, my point would be akin to critiquing an add only calculator app

> I would imagine this can be easily made sports agnostic?

Only if you can find the same quality of data feeds in the sports. It'll never be agnostic but it could in theory be generalized so that it's easy to add sports.

But again - data formats.

Maybe you can port it to the sport of your choice to watch through a terminal.

Not my taste... I imagine some people would like to view it in terminal though.. I was merely thinking out loud. Are the sports APIs standardized, or even readily available across all the popular sports in the U.S. ?

I’m gonna guess no. I’m amazed that even one sport offers a high quality enough API to build something like this.

Looks like this uses a very unofficial API - see the note about AWS IP ranges being blocked on https://www.npmjs.com/package/nba

No, not all leagues have a realtime API that conforms to the same interface. If so it would really hurt business for companies likes STATS Inc and Sportradar.

time to fork it and send a PR!

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact