8 ms·
Pirate Weather
- jgrahamc 4y agoI've been using this API (and sponsor its creator) and it's really great. Highly recommend it.
- tony_cannistra 4y agoI love the attitude of this guy. From the "Background" section: > "This project started from two points: as part of my PhD, I had to become very familiar with working with NOAA forecast results. Separately, an old tablet set up as a "Magic Mirror,” and was using a weather module that relied on the Dark Sky API, as well as my Home Assistant setup. So when I heard that it was shutting down, I thought, "I wonder if I could do this.” Plus, I love learning new things, and I had been looking for a project to learn Python on, so this seemed like the perfect opportunity! Spoiler alert, but it was way more difficult than I thought, but learned a lot throughout the process, and I think the end result turned out really well!"
- hospitalJail 4y agoApache2 license as well. No need to worry about them selling out.
- RobotToaster 4y agoI'm not familiar with AWS, but I'm not sure if everything needed to run your own version on your own AWS account is open source?
- capableweb 4y agoTo me it's a bit worrying that someone who is still is a student, builds such a complicated and hard to maintain architecture (https://github.com/alexander0042/pirateweather/raw/main/docs/images/Arch_Diagram_2023.png https://github.com/alexander0042/pirateweather/raw/main/docs...). Maybe it's complicated on purpose, to educate themselves on how to create infrastructure like that, but for a production environment, you want to keep things as simple as possible. I'd have opted for a setup where basically every single "service" in that architecture diagram is one function in a monolith program. Easier to maintain, more performant, easier to deploy and basically better in every single way except you can't individually scale components. But at the scale that the project currently is, I don't think that's needed for a long time, nor is it hard to scale one machine if needed. But again, if it's just a educational exercise in "web scale architecture", then it of course is OK. But I wouldn't want other students to see something like that and think that it's necessarily to create such a monster for a relatively simple "moving data around and wrangle it a bit" program.
- anaganisk 4y agoI don't know if a person pursuing a PhD is a student
- ale42 4y agoThey're "graduate students", usually. Still have a student status at most universities.
- capableweb 4y agoI'm guessing they are studying? That would make them a student, as far as I know. But English is not my first language, maybe there is multiple meanings of student and not all of them fit someone who is "pursuing a PhD".
- mynameisvlad 4y agoThis whole comment reads so weird. Why do you or anyone else care how complicated someone else’s architecture is? Why is it only “OK” if it’s an educational exercise? Are you going to be maintaining it? Are you going to even be using it? Why does it matter to you what someone else did in their spare time for their own amusement? Or even to make a commercial product out of it? Either way, it’s not your architecture to backseat architect, let people do what they want.
- capableweb 4y agoI think I already elaborated on why? A bunch of people take information they come across on the internet and think that's the only way of doing things, so if someone comes across the post, looks at the architecture they might think building it with so many components is a required thing, not just optional for really big projects. I'm personally dealing with infrastructure at loads of different places, and the amount of engineers who over-complicate their infrastructure pains me, they all go for a distributed architecture before the products they are building even have any users, because they've read bunch of blog posts about building it that way. It sucks to spend so much time and effort on maintaining and improving something when it's not really needed in the first place. Like using a Ferrari to deliver food in a traffic-heavy city, instead of just having a moped. So basically, I want to save myself and others time.
- elbac 4y agoIn conjunction with Pirate Weather, to consume/visualize the data I've been using: https://merrysky.net/ https://merrysky.net/ and https://briefsky.app/ https://briefsky.app/
- RegularOpossum 4y agoOn android I use NativeAlpha for setting up Briefsky as "app" that opens in its own Android Webview "app" rather than a browser. It's almost like DarkSky minus the notifications. https://github.com/cylonid/NativeAlphaForAndroid https://github.com/cylonid/NativeAlphaForAndroid
- joering2 4y agois it true that let's encrypt will not run your domain if it has a blacklisted word? I imagine "pirate" be it and the reason why this site is not using SSL ?
- belorn 4y agoThe site do have SSL, they just don't have the recommended redirect from http to https.
- faeyanpiraat 4y agoThey are using Cloudflare. There is a switch in the settings to toggle on HTTP -> HTTPS redirect which they need to toggle.
- ndsipa_pomu 4y agoI haven't heard of that - they blacklist certain high profile domains, but I don't think they blacklist words. Also, the site is using SSL.
- crtasm 4y agoPrevious discussion: https://news.ycombinator.com/item?id=34329988 https://news.ycombinator.com/item?id=34329988
- dang 4y agoYup, it's great but that previous thread spent 20 hours on HN's front page just a couple months ago, which makes this one a dupe (see https://news.ycombinator.com/newsfaq.html https://news.ycombinator.com/newsfaq.html). Actually we put the current post in the second-chance pool (https://news.ycombinator.com/pool https://news.ycombinator.com/pool, explained at https://news.ycombinator.com/item?id=26998308 https://news.ycombinator.com/item?id=26998308) — we try not to do that for dupes but sometimes we do anyhow. Sorry—it was just a good HN post!
- abrudz 4y ago> Weather forecasts are primarily found using models run by government agencies, but the outputs aren't easy to use or in formats built for the web. Maybe, but the Norwegian government does provide worldwide data via API: https://developer.yr.no/ https://developer.yr.no/
- atticoos 4y agoI got a kick out of the fact their base data structure is GeoJSON. I just.. wasn't expecting that https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=60.10&lon=9.58 https://api.met.no/weatherapi/locationforecast/2.0/compact?l...
- samschooler 4y agoI love this resource but, I will say it is 1km step for Nordic countries and 2.5km step for the rest of the world [0]. [0]: https://api.met.no/doc/locationforecast/FAQ https://api.met.no/doc/locationforecast/FAQ
- macintux 4y agoSomething I miss from Dark Sky that Apple inexplicably dropped failed to include in its Weather app: the ability to visualize changing temperatures across a region. The radar map allows you to scroll forward in time, but not the temperature map. Anyone have suggestions for apps/sites that offer that view?
- tony_cannistra 4y agowindy.com is a good one for that.
- macintux 4y agoThanks! Update: neither their site nor their app allow scrubbing. Boo.
- tony_cannistra 4y agoYeah, they do actually. There's a bar at the bottom with the time on it.
- LinuxBender 4y agoI used to go to windy.com as an alternative to weather.gov but they are moving in the direction of subscriptions. Currently they allow a couple weeks forecast. No idea if they will shorten that to a week to get more subs.
- 4y ago
- troebr 4y agoI love this, I played with grib2 files a while back to build a surf forecasting widget (and a surf forecast API!). It used now-deprecated libraries and it was a major pain to wrap my head around how everything worked.
- LinuxBender 4y agoThe link should be edited to use https:// https:// since the site does not have a 301 enabled on port 80.
- hcarvalhoalves 4y ago> Before going any farther, I wanted to add a link to sign up and support this project! Running this on AWS means that it scales beautifully and is much more reliable than if I was trying to host this, but also costs real money. https://github.com/alexander0042/pirateweather/raw/main/docs/images/Arch_Diagram_2023.png https://github.com/alexander0042/pirateweather/raw/main/docs... That looks like a pretty complex architecture. I wonder if instead of financial support, the author could use help figuring out a more cost-effective solution?
- bahmboo 4y agoWhat specifically is too complex?
- aftbit 4y agoProbably this whole thing could run on a single $10/mo DigitalOcean instance in a single monolith, with an appropriate caching CDN in front of it.
- bahmboo 4y agoThat's fantastic. Is there any one piece specfically that might run on that? The author discusses using AWS to get free in network transfers since the source material is published there by the guvment. In your analysis how would you offset that incresed cost by moving off network? It would also be interesting to try this all on a $10/month commodity hosting and then open it up for user facing apps such as a darksky type service.
- Bellyache5 4y agoIt's not clear that this isn't the more cost-effective solution. Without diving into the pricing of each component shown, I suspect there may be some cost optimizations to make (for one example, I had a hard time discerning from the write-up what the EC2 instance was doing...something related to more weather data collection I think?) but this is approximately "cloud-native" in approach, and the way to minimize costs in the cloud is to design your application to be cloud-native and use managed services and provider-specific capabilities where they make sense (and also tend to offer very low/free per-use pricing). Does that increase vendor lock-in? Definitely. It's a trade-off that needs to be considered for each application. Using the cloud to run a bunch of static VMs is an anti-pattern and a big factor in driving costs through the roof. (If you need a single server, a VPS is a very good approach.) The architecture is complex from the standpoint of having a lot of icons and arrows, but if it was running on a single server would it be _that_ much less complex? At this level of architectural diagram you probably condense most of these service icons down to one or two icons. But drill down further and you still have storage, cron jobs, an API endpoint with throttling/quota logic, CDN, a shared filesystem, the need to access the S3 buckets with weather data that AWS is providing from its Open Data Registry, plus (ideally) fine-grained permissions to lock everything down. Could you run all of this on a single server in a VPS? Yes! Could you run it on a vendor-agnostic K8s cluster? Yes! Would those options automatically be less expensive? Not necessarily.
- naikrovek 4y agotried to sign up, didn't get a confirmation/activation email. tried to sign in using the password I set, locked the account. amazing
- wartijn_ 4y agoIf you try to log in before clicking the link in the conformation email you'll get a "invalid credentials" message. So your account might not be locked, just not activated.
- dontbesquare 4y agoSomeone please use this data to make a clone of Weather Spark. Weather Spark came way before Dark Sky. As an ameature professional weather nerd I feel it was the best weather site ever! You could do so much with the data in one unified dashboard style screen! Especially with the integrated historical datasets. Examples: http://3.bp.blogspot.com/-B1LupTaXvSo/TcBNECP0A0I/AAAAAAAAEik/OqXYwhghm08/s1600/Weather_Spark_BETA.png http://3.bp.blogspot.com/-B1LupTaXvSo/TcBNECP0A0I/AAAAAAAAEi... https://flowingdata.com/wp-content/uploads/2011/03/Weatherspark-everything-575x451.png https://flowingdata.com/wp-content/uploads/2011/03/Weathersp... https://media.licdn.com/dms/image/C5112AQEuHVOGOd-5fQ/article-cover_image-shrink_423_752/0/1520176719518?e=1685577600&v=beta&t=V6oA1xAoQvaLtFgLYcTH-TXUhOSqFNAk9Gz74QHw5Js https://media.licdn.com/dms/image/C5112AQEuHVOGOd-5fQ/articl...
- xd1936 4y agoWow. Thanks for the blast from the past. WeatherSpark was the best! Forgot all about this.
- elif 4y agoWhen I am in the Backcountry and need forecasts for anywhere in the world, there is no data source more reliable than the Norwegian weather service. Their whole globe model is extremely accurate to the specific mountain or pass you are concerned about, with reliable mm and hour precision forecasts. In New Zealand it was way more accurate than any NZ sources I consulted. They also have many (free) api's for whole world weather. If your life depends on it, they are my recommendation. https://developer.yr.no/ https://developer.yr.no/
- nonethewiser 4y agoHow do you access it in the backcountry?
- elif 4y agoThis is fun actually. Once a week or so when I have connection, I load up the tabs I need for the next week in chrome, i.e. locations ~25km apart on my path. Then, when I'm on a mountaintop (usually at least 3-4 times a day when you are backpacking), I try to refresh them until I've updated the forecasts. If it loads, I take a screenshot and stop trying for the day. At night I review the screenshots and mark them up. After my last thru hike I vowed to turn this into an automatic app that would turn on the radio for these polls at certain altitudes based upon geospatial calculations and then turn off the radio automatically after acquiring a daily update.. but alas I never did.
- FrustratedMonky 4y agoLot of people hating on his 'architecture' that are a bunch of 'architecture astronauts'. This is a kid that saw a need and went out and did it. His PHD is “currently completing my PhD in Water Resources Engineering”. So, this work is pretty amazing as a hobby, a side line to his PhD. Isn’t that what Open Source is all about, jumping in and filling a need, not “waiting until I’m a grizzled 30 year veteran of the corporate IT wars, then deciding to do something with a perfect architecture”.
- nonethewiser 4y agoIt’s hacker news. An engineering audience is going to have an opinion. The author can learn from the feedback. By all means, it would be rude to criticize OP for his design choices but most of what I see doesn’t fit that category. For the record I agree that his accomplishment with this project is impressive.
- the_af 4y agoI see no hate, just a critique. ("Architecture astronauts" don't argue for simpler architectures, but instead want to build general, solves-everything kind of overengineered monsters. I don't see this in the critiques)
- bahmboo 4y agoI don't see any critiques.
- the_af 4y agoIt's the second topmost thread, start with this comment: https://news.ycombinator.com/item?id=35342160 https://news.ycombinator.com/item?id=35342160 I think the critique is pretty mild and reasonable, regardless of whether you agree with it or not, and it's definitely not "hate".
- bahmboo 4y agoAhh, thank you for the direct link. Part of the confusion with the duped/notduped post. I don't think OP really meant "hate" with the expression "hating on" but it's still easily taken as harsh.
- sammy2255 4y agoThe sign-up process is flawed. “Apiable” asks me for an Email address, first name, last name, and password. But on the login page it asks me for username and password. I never set a username.
- xixixao 4y agoIs there a free API for historical data? I wanted to answer questions like: What was the weather like on this day in last x years, or what is the average in some place in a given month based on last x years?
- meteo-jeff 4y agoYou can try my API: https://open-meteo.com/en/docs/historical-weather-api https://open-meteo.com/en/docs/historical-weather-api
- 0xbadcafebee 4y agoThis could be a really interesting experiment in Open Source Architecture. The design is currently.... complicated. I wonder what kind of process we could use to unpack and map out the entire architecture, such that average contributors could make "PRs" about changes to the architecture, in order to slowly simplify and improve the architecture over time. I am imagining a process that involves programmatic architectural diagrams, graphs, estimates of resources, DAGs, documentation, links to source code, etc. Almost like a sub-project, where the architecture itself becomes a project. The end result of that project could tell you rough estimates of cost, performance, complexity, and let you visualize changes. And of course it would become the "map" by which you discover pieces of the system, the place all new devs start to learn about the system or find documentation. (I am not saying the author's system needs to change, I'm just speculating about how to organize a collaborative effort, if change was wanted)
- zie 4y agoI've never found the govt provided API's all that difficult.