Recommended Posts

It has a name, I can't remember what it is.? I've been there before, it has tons and tons of data.? Where do you think Weather.com gets there information?? They don't have enough money for national wide radars and weather stations across the country.? They get it from the NOAA.? Everyone does.? Hamweather (http://www.hamweather.com) is a good example of using public domain information, all the information on there is from public domain servers.? I'll continue to look for that URL.

585765773[/snapback]

Weather.com has worldwide support, a free XML feed, and the ability to scrape images (i.e. the radar). I have yet to see anything else that offers all of this. Anything that isn't free need not apply unless you want to pay for WeathAlert.

You're kidding right? :rolleyes:

Ever heard of "The Weather Channel"?

585765792[/snapback]

How dumb do you think I am? ;) Oh course I know the Weather Channel runs weather.com. My statement still applies. Every weather source in the US, other then some local channels which have some weather stations and radars for their area get it from NOAA. I was just saying, why not go to the source? I understand it would be harder and not as easy getting it from weather.com. However, it does limit you some what, Weather.com limits what you can do, for example, there's no way you could ever make that software shareware. But whatever, just an idea.

The biggest problem with these places (ignoring the lack of international support--there's no way I'm tackling the logistics of finding free sources for all these other countries, figuring out which one to use depending on the location, and writing accessing functions for every one of them) is not merely getting the data but rather mapping a location to an ID that can access the data. Weather.com has a free, worldwide, easy-to-access XML feed. None of these others, many which have been mentioned the last time this subject was brought up earlier in the thread, have these features. Weather.com has a simple search into which I enter a location name (that you provide in the dialog box), which returns a list of matching location names and corresponding IDs, and that ID is used to access all the weather info for that location. There is no easy way to get the IDs from the noaa, at least not that I've found; furthermore, I was not able to find any easy way to access the data short of scraping the page which is not only unreliable (have you forgotten the last month's radar map issues already? That was caused by breaking the page scraping) but also slow and inefficient. Those that do have XML charge significant amounts of money for it. That means I would have to charge for WeathAlert, most likely on a subscription basis, or I would have to litter the program with ads, which would make it no better than Weatherbug or the like.

Edited by darkmark327
  • 2 weeks later...

hey darkmark, this is an awesome program! I found a couple of bugs(?) though in 2.3.0.4:

(I glanced through the thread but didn't read all 14 pages very thoroughly so they may have been brought up before)

1) With the "metric" setting, there's no descriptive pressure value. When it's set to "imperial," it will say "steady" (or "rising", etc) after the comma, but there's just a blank space with metric. I'm not sure if it's because the metric values usually take up more space, so the extra word doesn't fit and it gets bumped to the next line. (screenshot below)

weathalert7yc.jpg

2) When I set the program to start with windows (in the program options), it uses the default icons. However, if I exit and restart the program, it uses my custom icons. Furthermore, if I disable the program option but put a shortcut to weathalert in my startup folder (instead of using the HKCU...Run method), it will start with windows AND use my custom icons. Hmm...

Oh yeah, it also doesn't seem to want to use my "na.png" (it always uses the default), but that's no big deal.

Thanks for making such a useful (and free) program!

hey darkmark, this is an awesome program! I found a couple of bugs(?) though in 2.3.0.4:

(I glanced through the thread but didn't read all 14 pages very thoroughly so they may have been brought up before)

1) With the "metric" setting, there's no descriptive pressure value. When it's set to "imperial," it will say "steady" (or "rising", etc) after the comma, but there's just a blank space with metric. I'm not sure if it's because the metric values usually take up more space, so the extra word doesn't fit and it gets bumped to the next line. (screenshot below)

weathalert7yc.jpg

2) When I set the program to start with windows (in the program options), it uses the default icons. However, if I exit and restart the program, it uses my custom icons. Furthermore, if I disable the program option but put a shortcut to weathalert in my startup folder (instead of using the HKCU...Run method), it will start with windows AND use my custom icons. Hmm...

Oh yeah, it also doesn't seem to want to use my "na.png" (it always uses the default), but that's no big deal.

Thanks for making such a useful (and free) program!

585861067[/snapback]

1) Yes, unfortunately it gets truncated by moving it to the next line. I never bothered to figure out how to alter that without changing the whole GUI since no one had ever complained : ) -- I'll look into doing so.

2) I'm betting that the "start in" directory, so to speak, is to blame; probably when it starts with HKCU the working directory is %USERPROFILE%. I'll change it to look specifically in the folder in which the program is stored. Also, try renaming na.png to -1.png, my instructions are wrong.

Alright, figured I give another update on what's happening:

I fixed the above (with the icons not showing on HKCU startup) but that's rather minor. I've begun reorganizing the program and begun to add support for localization. I've also added an installer, for better or for worse, since the program is now several files (4 core files, plus another .dll for each language). Basically what I'm doing is reorganizing the way the interface is coded so that it will be much easier to add to it.

Currently the entire settings page is one file, as is the main UI. The settings page currently has all of its settings spread on non-visible parts of the UI and when I'm designing, I stretch it out so I can see all of them and then resize it back to normal for release (see the image--I'm mostly done stripping them out so most are no longer there but you'll see what I mean). This makes altering the settings a giant PITA. What I've done is strip out each of those 'panels' into their own control, and just add an instance of each control to the form and associate that with the settings list on the left in the same way that the groups were previously. This allows me to encapsulate each group and make changes much more easily, since the settings UI is untouched and instead I merely make changes to that control.

E.g. (and this is what largely got me going) someone had requested that I make a list of words that could be used to exclude severe weather alerts. Now, all I have to do is open up the file for the NWS alert settings control and add the requisite stuff to that (e.g. a button that will pop up a UI). I'd also have to add stuff to the settings page but only to set the initial list and to get the list to save.

This also allows for common features to be shared: for example, in the NWS alerts and the condition alerts there are sound options, which previously had been merely a duplication. Now there is a "sound options" control, which is added to each of them. I can change that sound options control and the changes will be reflected on each.

I also plan to perform a similar compartmentalization on the main UI. E.g., the view toolbar will be its own control, a forecast page will be its own control (and then merely used n times, and changes only need to be made once. Right now it's not as bad as settings--I still would only have to make changes once, but that whole thing is done as code stripped from the form designer and made into an array, which is a PITA to alter). The day forecast and night forecast will be one control which is then duplicated for each page, the current conditions group will be one control, etc.

All of this breakdown will make it much easier for me to make changes, e.g. adding features and settings and such--but, it will take time; the settings changes are relatively easy because it was pretty much just cutting the stuff out of the new settings and pasting it into its own file (for the most part, but there are dependencies that have to be handled too), but the main UI will be much more difficult to compartmentalize because everything is closely tied together.

The new multiple files setup is going to result in changes to the automatic updates, but minor ones. Obviously only changed files will be downloaded, but I also plan on building in a messaging system, so that if an update has important info for the user, it can be conveyed more effectively than hoping they'll read the changelog. Since I'm going with multiple files to begin with, instead of the batch file, I will write a small GUI app to apply updates that accomplishes the same thing, but much more reliably--I can actually have it monitor and wait for the main app to close, rather than hoping that it will in 5 seconds (which led to that bug a few versions ago where the update began before the confirmation dialog).

All of this also makes localization easier, since each control has its own list of strings, rather than one giant monstrosity. My plans are to write a small localization app that will read in the lists of English strings, display them in a table, and the translator can merely enter their equivalents right next to them.

I'm also going to redo the locations registry format to make it more efficient, so the next version will require you to add your locations again. Also, I've altered the menus slightly to conform to Windows conventions (File, Edit, etc). It's not a big change, and it may be a bit annoying but it (and all of this) makes future expansion easier.

Here's the new menu-ing system:

File -> Mute, Quit

Edit -> Location, Settings, Alert Settings

View (same as before)

Window -> Display (next-to/below)

Help -> About (I also plan to add Check for Updates here)

I may also integrate more with the website, and for example have in-program application of icons (the current way will still be supported), and perhaps a UI to choose among stored icons. That's low on the priority list, as I still have many requested features to add. They will be easier to add after this transformation, which is why I've begun doing it, since again, it won't require fishing through the monolith that my source has evolved into.

Also, I just thought of this, perhaps for error reporting I'll keep a database online that can the program will try to look up when the program encounters an error, and when I fix the error, I will store in it what version the problem was fixed and the program can check this and update the program if the current version is out of date. That would be cool.

I do have finals/projects these coming 2 weeks and a full-time internship for the summer, so how much of this gets done and when is not certain. I've wasted too much time on the weather program this week already! (I have two big CS projects due weds/thurs)

post-11870-1115678269_thumb.jpg

Edited by darkmark327
  • 2 months later...
  • 3 weeks later...
  • 3 weeks later...

hey you know what would be so much awesomer. if you could view an alert after you click ok. like maybe a link in the menu bar or somethin. cause now, once you click ok, and can't view it again..

anyways look at the bottom of this alert i got - teheeh

THE WATER DEPTH MAY BE TOO GREAT TO ALLOW YOUR CAR TO CROSS SAFELY. VEHICLES CAUGHT IN RISING WATER SHOULD BE ABANDONED QUICKLY. MOVE TO HIGHER GROUND. TURN AROUND...DON/T DROWN....

and yes its real! :laugh:

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • My father still uses a programme written in dbase3. Still manages to work with a little help from dosbox. 
    • Microsoft hides these secret Windows 11 performance boost settings available on every PC by Sayan Sen Windows enthusiasts often look for ways to extract as much performance out of their systems as possible, and it's often the case that they try and do so while trying to minimize the heat and power consumption. This is especially relevant in the case of mobile Windows PCs since laptops and notebooks tend to get hot and management of that heat and power is harder in such a form factor. As such users often turn to techniques like under-volting which can be used to squeeze out the maximum capabilities of a chip while also maintaining lowered power levels. There are official apps from AMD and Intel with the likes of Ryzen Master and XTU (Extreme Tuning Utility). While these are quite handy, most enthusiasts probably prefer to dig into the BIOS and play around with settings there like Curve Optimizer on Ryzen, which lets users set various frequency-voltage scaling values. These are essentially called P-States. If you are not familiar with them, Processor Power Management is done through Advanced Configuration and Power Interface (ACPI) P-states and C-states. While P-states or performance pwoer states handle CPU voltage-frequency scaling, C-states deal with CPU sleep states so that some of the CPU functions, which are not necessary at that moment, can be disabled. The P-states and C-states work together to make the processor run more efficiently. It helps the OS and apps determine which cores can be parked and which should be boosted. Of course not every user is an enthusiast or knows the technicalities and integrities of how things like overclocking or undervolting work. Thankfully for them Windows itself offers something pretty cool, though it is hidden by default on all systems. By default, Windows only has two P-States, "Minimum Processor State" and "Maximum Processor State." However, this can be changed with a Registry trick to expand the options under a secret "Processor performance boost mode" dropdown. This essentially enables the HWP or hardware P-States available on a device, and these are not controlled just by the OS itself as the underlying hardware gets involved too. In total there are five Processor Performance Boost Mode profiles that control how Windows requests and allows CPU turbo/boost behavior under the different power policies. They are: Disabled: In this mode, processor boosting is effectively turned off. The CPU will avoid entering turbo or boost frequencies and instead operate closer to its base frequency ceiling. This can significantly reduce power consumption and heat output, but at the cost of reduced burst performance and responsiveness in short workloads. Enabled: This is the standard behavior where boost functionality is allowed under normal conditions. The processor can opportunistically increase frequency when workload demands it, balancing performance gains with power and thermal constraints as managed by the system. Aggressive: Aggressive mode favors performance more heavily, allowing the CPU to enter higher boost states more readily and sustain them longer. This should in theory improve responsiveness under bursty or heavy workloads but increases power draw and thermal output compared to the default enabled behavior. Efficient Enabled: This mode still allows boosting, but with a stronger bias toward energy efficiency. The system attempts to use boost more selectively, avoiding unnecessary frequency spikes when the performance gain is marginal. Efficient Aggressive: This is a hybrid approach where boost is still performance-responsive, but the system continuously weighs efficiency more heavily than in Aggressive mode. It aims to deliver noticeable performance improvements while reducing wasted power in less demanding scenarios. Here's how to enable the Processor performance boost mode: Open Registry Editor: Press Win+R, type regedit, and click OK. Go to: HKLM\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\be337238-0d82-4146-a960-4f3749d470c7 (where HKLM stands for HKEY_LOCAL_MACHINE_) Modify the value of Attributes from 1 to 2 (you can find modify option by right-clicking) After that, exit Registry, you should now be able to see the new "Processor performance boost mode" dropdown menu: As you can see there are now five new P-States or CPPC states or power profile available that help define the boost mode processor setting on your PC. Wrapping it up here's a quick run-down of the settings as defined by Microsoft itself. Setting Description Disabled The corresponding P-state-based behaviour is disabled. Collaborative Processor Performance Control (CPPC) behaviour is disabled. Enabled The corresponding P-state-based behaviour is enabled. CPPC behaviour is Efficient Enabled. Aggressive The corresponding P-state-based behaviour is enabled. CPPC behaviour is Aggressive. Efficient Enabled The corresponding P-state-based behaviour is Efficient. CPPC behaviour is Efficient Enabled. Efficient Aggressive The corresponding P-state-based behaviour is Efficient. CPPC behaviour is Aggressive. Aggressive At Guaranteed Windows calculates the desired extra performance above the guaranteed performance level, and asks the processor to deliver that specific performance level. Efficient Aggressive At Guaranteed Windows always asks the processor to deliver the highest possible performance above the guaranteed performance level. In the next part we shall be comparing these settings to explore how much of a benefit or regression they can provide in terms of performance and power efficiency. If you decide to change the values on your system and are experiencing problems like crashes or an overheating PC, make sure to revert the steps back to the original state.
    • I think he means you haven't reviewed previous UFC games. Of course it doesn't matter... Every time you just report on something that involves the President even if just simply what happened you guys usually get accused of being anti-Trump. We live in fun times.
  • Recent Achievements

    • One Month Later
      Leroy Jethro Gibbs earned a badge
      One Month Later
    • Conversation Starter
      flexorcist earned a badge
      Conversation Starter
    • One Month Later
      AndreaB earned a badge
      One Month Later
    • One Month Later
      agatameier earned a badge
      One Month Later
    • Week One Done
      agatameier earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      518
    2. 2
      +Edouard
      198
    3. 3
      PsYcHoKiLLa
      147
    4. 4
      ATLien_0
      93
    5. 5
      Steven P.
      77
  • Tell a friend

    Love Neowin? Tell a friend!