riskinit.org logo
Technology is the term we use for things that don't quite work yet.

Programming Books

12/14/2020

So I decided that my programming skills were entirely outdated before summer this year and went on a book reading, webpage reading, tutorial doing, online class participating rampage. I tried to think of a good platform that would both give me experience in modern OO design and would be useful. I’m a mac gal, so the iPhone and Cocoa on the Mac seemed perfect.

First up was trying to find the right books. After much research here is the path I took.

1. Beginning iPhone Development – Solid
2. Programming in Objective C – Solid
3. Cocoa Programming for Mac OS X – Solid
4. The Object Oriented Through Process – Solid
5. Design Patterns: Elements of Reusable OO Software – Reading
6. Cocoa Design Patterns – Reading
7. The Pragmatic Programmer – Queued
8. iPhone SDK Development – Reference
9. iPhone Cool Projects – Reference

Notable Mention: The iPhone Developer’s Cookbook: Building Applications with the iPhone SDK – Erica Sadun
I still haven’t full read this one, but Erica is accessible, puts up tons of useful code online and is really a true iPhone hacker and less a standard developer. This gives her a unique perspective and while many may be critical of her code style, I appreciate her really digging in and uncovering the mechanics below the facade.


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

I’m not one to speak out against conservation, but, people have no idea how water usage really works. 90% of the time the media just talks about urban and residential usage which only represents 10% of allocations from the DWR (doesn’t include groundwater). In the rare instances where NPR or real news organizations start talking about agriculture, the real agriculture usage is about 80% of the water use. I’m pretty sure that includes numbers outside the DWR water plan (again more groundwater).

California DWR planning has access to about 80MAF (million acre feet). A single acre foot is roughly 325,000 gallons of water.

CAwateruse.updated

So, assuming this doesn’t include ground water withdrawals which are outside the DWR that makes up for the other massive chunk.

Ok, so lets get some perspective here. No human being in CA will be deprived of water and if they are, its purely because of money/politics/bureaucracy.

Of the 80MAF total allocation under the purview of the DWR, 39MAF go towards mandated environmental use (instream flows, required delta outflows and scenic rivers) alone is more than 4X as much as ALL URBAN NEEDS COMBINED including industrial/residential/etc… even a 10% reduction to mandated flows would increase urban water availability by 50%.

Agriculture is the next 33MAF, again a small change to the usage here is a massive number. If California farmers were deallocated even the slightest amount, it would solve any perceived urban issues.

So of that urban use of 8MAF, about half goes to landscaping.

Screen Shot 2014-08-21 at 1.43.56 PM
water-fig1-lrg

If every adult in the united states did the ice bucket challenge it would use 736 AF (note, not MILLION, just acre feet) or around 0.00092% of the total water just in CA (not all of the US). In reality it’s probably about 1000x less than that, maybe a quarter million people? It’s really really really insignificant. Probably, a lot less than the 50AF lost from the pipe that burst near UCLA a few weeks ago.

I think my frustration comes from the fact that the debate is always framed around the common people being asked to conserve without being given the real facts. It’s much easier to get people in a panic that we might RUN OUT OF WATER rather than give them the truth.

Turning off the power in CA during the power crisis was a total farce, did we build lots of massive new power plants and distribution since the crisis? Or, did we just stop the corruption? I’ll give you a hint… we shutdown the San Onofre nuclear facility which provided over 2200MW of power and the lights are still on.

Conservation is important, recycling and reusing is important. Lying to the public is wrong and people freaking out about spilling water is just silly. Yes, people live in countries where water resources are a life threatening issue. But the reality is, you can’t fix that problem by conserving here, geography, politics, money and infrastructure don’t change because you saved a few gallons.

Until we reclaim our government, until we get big money out of politics, we can’t even begin to make changes that might help other nations.

Step 1. Reclaim your democracy
Step 2. Pass laws that make a REAL difference for our people
Step 3. Pass laws that make a REAL difference for the world.

None of that happens without step 1.
One option, because I hate when people complain wihtout solutions…
MayDay SuperPac


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Sky Dayton

Sky Dayton seems to believe it is, and I don’t see any reason to doubt him, as long as the adoption is there.

In the technical sense, Hotspot 2.0 is the specification and Passpoint is the trademarked branding the Wi-Fi Alliance is using for certified devices. So I’m using 2.0 moniker loosely…

Clearly demand is outstripping availability of available bandwidth on wireless networks, the ability to ‘roam’ on to WiFi hotspots with seamless voice/data sounds like a great way to solve the problem for both carriers and users. Standards appear to now have been in place for a couple years, adoption is now the key to it’s success.

An interesting read…

http://www.skydayton.com/skydayton/2014/5/21/catching-the-next-wi-fi-wave


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

2014 I haven’t posted in almost 2 years! Yikes, damn day jobs… Recently the door knob in the office building has had a thing against me. So, I took a picture. I was hoping for a little more definition, but I’m going to have to do some experimenting to figure out how to get the best shot. For now, this didn’t come out too bad. I tried various exposures but generally between 1/4 to 1.3 seconds at ISO 1600-3200 and F2.8-F8. I did find someone else who did the same thing, over the course of 3 days he refined his technique and used pyro to enhance the effect. I’d like to stick to purely electricity. He was doing longer exposures. But, i’m not sure that’s the effect I want. I think I’d like even shorter exposures, but without a continuous source of sparks, the timing would be difficult. I more secure rig might help as well, but i’m not sure.


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Seriously, after reading a few articles (yes, I haven’t actually installed it yet) the amazing new feature list includes…

iCloud Integration: Nice, but not revolutionary.
Notification Center: Don’t we already have this with Growl?
Gatekeeper: A step backwards IMHO. I understand the reasoning but by making this the default, they are going to financially harm any developer not in the store.
Notes: Stickies
Messages: iChat
Calendar: iCal
Reminders: Nice, but its little more than a dashboard app. If they integrate Siri that would be nice.
Share Sheets: This has promise, the OS is due to have some social integration built in.
Game Center: Also very welcome, while not strictly needed, it will probably invigorate casual gaming on the mac.
AirPlay Mirroring: Also welcome, but, it seems like a fairly niche feature.

So really, I’m not sure of the direction they are going in, maybe I’m getting old and skeptical. But, I think the “Mountain Lion” part of this is just like ‘snow leopard’, not quite a full update even if it’s getting a new version number.

Things I’d *like* to see in a new OS X?

Seamless data management. Think time machine with hardware knowledge. “There appears to be 1025 files in 10gb that are only located on a single storage volume and are more than 30days old, please insert a blank bluray, sync to icloud, or add a new volume”. “there is data on a dvd-r you burned 3 years ago and is not backed up anywhere, please insert the disk to make it redundant.”

But, I fear they are going the Cloud Path with no looking back and I just don’t know if i’m a luddite for not wanting my data spread across that series of tubes…

Bring back the Snow Leopard color schemes and scroll bar options.

True resolution independence.

Fix the issues with Lion automatic saving, things like mark a checkpoint for good versions.

Ok, thats all the rant I have in me at the moment…


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

I’ll keep the commentary to a minimum, many already know that Richter isn’t a useful tool to determine total damage, but I thought I would spread the word. Here are some shake intensity maps for various earthquakes. I was particularly interested in the Northridge quake. It caused widespread damage and was very intense, yet rated comparatively low on the Richter scale. Here is an interesting excerpt from the Northridge Earthquake wikipedia page that backs up the maps. “The earthquake had a “strong” moment magnitude of 6.7, but the ground acceleration was one of the highest ever instrumentally recorded in an urban area in North America,[2] measuring 1.7 g (16.7 m/s2)”.

Take a look at the images and for more information the USGS page has an enormous wealth of data on earthquakes including both real-time and historical data. You can even report earthquakes you’ve felt and contribute to the data.


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25
Safari
Safari

Only took 12 months for the keyboard scrolling interrupt bug to finally get what was coming to it. At least 7 geeks world wide rejoice now that they can scroll complex long vertical pages in Safari with their key repeat set to overdrive. Actually, i’m sure a few non-geeks with older machines are probably thinking ‘hmm this seems a little faster’ too.

Either way, I’m glad it’s fixed, it was really annoying me forever.

Update: So it seems to be fixed on both my Mac Intel Mini and my G5 Tower, but oddly still not fixed on my brand new MacbookPro. All I have to say is…REALLY? Really…i mean seriously really?

Watching my G5 scroll faster than my i7 is just disturbing.


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Good design! Low unsprung weight while retaining direct drive benefits.

Bad hub wheel motor design.
Bad hub wheel motor design.

I’m not going in to the details on particular attempts at hub motors, but even if executed perfectly they are bad.

Unsprung weight means terrible handling and reduced road-holding capabilities!

Done, end of story, move on.

Good news: There is an alternative.

In-board electric motors: You place the motors in the center of the vehicle and use standard short drive shafts to bring the power to each wheel. The downside? Space… you need to fit two motors (remember you no longer have a differential) as close the center of the vehicle as possible and either have the entire motor pivot or have short angled drive shafts from each one.
By placing the center of gravity of each motor almost completely off the wheel you mitigate the unsprung weight to almost nothing.

There are a couple other problems with wheel motors, you need a massive amount of current and a motor that is efficient over a wide range of RPM’s. Modern high powered IGBT’s and MOSFET’s are probably up to the task and when integrated in to intelligent power controllers, they can drive various forms of electric motors at high levels of efficiency and power.

The second problem ‘massive current’ is a bit harder. Battery chemistry is changing rapidly, but it is still difficult to find chemistries than can supply large current, long cycle life, reasonable price, weight, size, safety and the ability to be mass produced.

All said, drop the stock differential, the stock drive shaft, the motor, the transmission, exhaust, emissions equipment and all the other ICE components that become redundant and then you might have a chance of building something that has a reasonable power to weight ratio and efficiency level.

One last thing, as an alternative you could place the motor where the transmission is on a RWD vehicle, keeping the existing differential and drive shaft (a 100 year old design). This adds additional weight, but you no longer have the space restrictions and gain a bit of gearing which might lower your peak power needs.

This Detroit Electric design is ancient but a good compromise.


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25


So after my mild disappointment with Apple releasing an uninspired speed bump to the recent MacPro line (no case redesign (it could lose 20lbs), eSATA, 10GigE, FW1600, or even USB3.0), I started doing some research on 10GigE just to see the state of affairs.

Things I learned:

1. What I want is 10GBase-T the standard RJ45 cabling we all love.
2. Cat6 isn’t going to cut it, Cat6a or Cat7 are going to be the only ‘real’ options. I say it like that because under good conditions (short distances, low interference, not in big bundles of cables) Cat6 will work. But, for safety sake, I wouldn’t count on it.
3. Various fiber and copper cables are being used in the interim. CX4 and SFP+ are the common cables in use and are designed for shorter connections. But, they aren’t that interesting unless you’re building a small dedicated cluster and really what I want is something that interoperates in the rest of the GigE world.
4. There are 3 (that I could locate) actual 10GBASE-T switches, most are just gigabit switches with a couple 10GBASE-T uplinks OR are massive datacenter switches. The 3 I did find are too expensive ($11000-19000) for home use, but aren’t out of range for the right small business application.

Arista 7120T-4S
This 24 port swtich is really the best choice if you need ultra low latency (think network computing) and/or raw bandwidth (think editing RAW HD Video). It features 20 auto-negotiating 1/10GBASE-T ports and 4 SFP+ uplinks. Network World tests put the latency at a very stable 800ns! That’s 0.0008ms a.k.a. very, very fast. I would love a low cost 8 port version of something like this. A quick google product search shows you can pick one of these up for ~$13,500.

Dell PowerConnect 8024
Another possibility is the Dell 8024. It has the most configurable port setup (24x SFP+ (10Gb/1Gb) w/4 Combo Ports of 10GBASE-T (10Gb/1Gb/100Mb) or SFP+) and is the lowest cost of the bunch at ~$11,500 (google product search). If you need all 24 ports, or if that extra $2k is going to put you over budget or if you merely need the extra bandwidth 10GigE brings, this is probably your best choice.

Extreme Networks Summit X650-24t
While I’m a big fan of Extreme as the underdog of high performance network switching, unfortunately, as far as I can tell from the datasheet, the ports are 10GBase-T ONLY and aren’t backwards compatible with GigE or slower. This is a bit disappointing as they were a great company to work with back in the Static days when we used their products. On a positive note they performed the best on IGMP multicasting, so if IP multicasting is your thing, this is your switch! $18,709.86 on Amazon :)

Network world did a nice review (although its terrible to navigate) of the bunch and put the Arista on top. Here is the comparison chart for a general overview.

Further reading:
High Performance Made Simple: The 10 Gigabit Ethernet Cluster


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25
Safari
Safari

I mean that pretty much sums it up. I was really hoping 5.01 would fix it, but apparently, no such luck. Basically, if you have your keyboard repeat rate set to anything other than dog slow, Safari starts animating the scroll, then in the middle of starting to animate it sees the next keyboard input and interrupts the first scroll and just gets terrible. Using the mouse is super silky smooth, the arrow controls work albeit a little chunky, but, I suspect it’s merely because the repeat rate is slower.

I’m sure a method is getting reentered and somewhere an if statement is missing or broken… e.g.

if (animating == YES) DON'T INTERRUPT ANIMATION!;

In the video I first use the keyboard arrows, then the pageup/pagedown, then the mouse controls and finally some more keyboard.

Safari 5.0/5.01 Terrible Keyboard Scrolling Video Click HERE

Update: 9/8/10 5.02 did NOT fix the bug…so sad…
Update: 10/18/10 5.03 did NOT fix the bug…sadness continues…
Update: 4/14/10 5.05 DID fix the bug! Rejoicing ensues!!! Thank you Apple!


Warning: include(/Library/WebServer/Documents/riskinit.com/wp-comments.php): failed to open stream: No such file or directory in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25

Warning: include(): Failed opening '/Library/WebServer/Documents/riskinit.com/wp-comments.php' for inclusion (include_path='.:') in /Library/WebServer/Documents/riskinit.com/wp-content/themes/mytheme/index.php on line 25