A new top level domain (TLD) is being proposed to B’ecause’ I CAN as a safe alternative to existing domain name space. The “.pinkbunny” domain will be aimed at those organizations requiring a high level of trust and security of their websites, such as kids with pink bunnies, those who may have lost a pink bunny and other critical infrastructure sites that deal with pink bunnies.
The proposal is that organizations successfully registering a site within the “.pinkbunny” domain space would need to undergo a thorough background check and also adhere to a number of strict security requirements such as photographic proof of said pink bunny and regular visits to the vet for checkups to ensure no virus infections. Any sites not adhering to the security policies would be disconnected. B(ecause) I CAN is currently reviewing submissions for new TLDs and is expected to publish its results over the coming weeks.
I have always believed in my notion that we live on the crest of (various) information waves. Anything that will save us from living within a single distracted minute is a good thing. ThinkUp can backup your social network data that’s flowing backward off the waves and out of site as you surf towards the infinit shore. ThinkUp analyzes all the data it collects. ThinkUp gives you insights and information previously the domain of the social networks and not shared with you.
ThinkUp is (today) still a bit more geek oriented than click and go user friendly. For someone that cares about their data (analysis) and has an Amazon AWS account – very simple to install, run, and setup as the documentation is some of the best and most directly useful that I have ever read. AWS Get Started @ ThinkUp.
For me the best page to read was this one about the inspiration(s) for ThinkUP. I had no idea that even 3/4 of those companies/services existed. I found it a quick guide to the current ‘state of the web’ for the core ideas ThinkUp has formed around. I am glad to say I stand with ThinkUp as “the one” of these many I may be able to contribute to in the future.
Stock bot needed a case. Something blue and new. I had a heck of a time learning 3D tools but a meetup friend helped me over the hump of simple box design. Here is a picture of the resulting box for the Arduino Stock Bot project as it is so far. Quite happy with the first ever attempt – fits like a glove.
- Bot side off showing first two boards.
- Bot back with fitted holes for the jacks
This is the page that allowed me my “Eureka” moment on how to drive a large number of outputs from a very few number of pins. If you ever wished you could have 10 or a 100 more output pins – the shift register chips are ones to consider. I won’t blabber on just follow the link watch the video and you know where to start if it can be applied to your own effort.
http://bildr.org/2011/02/74hc595/
Enjoy
Not to be trite but you may learn more here (wikipedia.org) then here. This post is intended to fill in some of the background of how the 4511 chip was used in the Stock Bot project. Let’s dive in and see if it remains coherent. The chip is designed (I presume) to enable one to use fewer data lines to drive a 7-segment display. LED displays are common while the one in Stock Bot is a little less so. A seven segment display has 7 inputs one for each light element. You would need 7 data lines to drive a single digit and many more to drive additional digits. This project does not use the data latching features that enables several 4511 chips to drive several digits while keeping the data line count to a minimum. When you scale the number of digits you really save on data lines and the value of the chip becomes evident quickly. To be brief, several digits can be managed (like a clock) by locking the current displayed value into each chip and then unlocking only one digit at a time to effect a change to that digit. Quickly locking and moving on, unlocking change lock, continue. If that made any sense you got the idea. Do this fast enough and large multi digit displays can be managed – again with 4 data lines and the latch control logic.
Driving the single chip was a fun code experiment. So let’s look at that. Like I said on the Stock Bot page I had to learn (re-learn/hack in) C# for this. When you drive the chip you are essentially sending it a binary code along 4 digital lines. A 4 line data bus I guess. Given an integer from 0 to 9 convert that to binary or otherwise figure out how to set your 4 data pins correctly.
A set of if statements would do that. A switch statement would do that. Both I tried as I had to get something started. Neither felt clean enough to me (don’t get me wrong some of the code is still way to ugly to even tell you about yet/ever). So I worked out what I have below because I knew in my mind something cleaner should exist. Your improvements are welcome as comments.
// helper class
class BCDOutputClass
{
byte mask1 = 1;
byte mask2 = 2;
byte mask3 = 4;
byte mask4 = 8;
OutputPort Bin1 = new OutputPort(Pins.GPIO_PIN_D9, true); // A
OutputPort Bin2 = new OutputPort(Pins.GPIO_PIN_D12, true); // B
OutputPort Bin3 = new OutputPort(Pins.GPIO_PIN_D11, true); // C
OutputPort Bin4 = new OutputPort(Pins.GPIO_PIN_D10, true); // D
OutputPort CommaPin = new OutputPort(Pins.GPIO_PIN_D13, false);
// Constructor
public BCDOutputClass()
{
//
}
// Instance Method
public void Display(byte a)
{
a = (a < 10)? a : (byte) 10;
Bin1.Write((a & mask1) > 0);
Bin2.Write((a & mask2) > 0);
Bin3.Write((a & mask3) > 0);
Bin4.Write((a & mask4) > 0);
}
public void Clear()
{
Display(10);
Comma(false);
}
public void Comma(bool a)
{
CommaPin.Write(a);
}
// Destructor
~BCDOutputClass()
{
// Some resource cleanup routines
}
}
Most of this becomes clear if I just talk about the meat of the code in public void Display(byte a). Maybe not but let’s start there as it is the crux of what makes this (IMHO) better over an if or switch statement. I have, of course, not tried to figure out if this compiles to smaller code or not – that’s not a concern I have any interest in yet.
The function takes in a byte – the code when running sends in the values zero to 10 when all is normal. 10 is an exception and I should explain that first as the line first executed is a test for values over 10 and if over we revert a to 10. 10 in binary is 1 0 1 0. Setting the 4 pin data bus to an invalid value. 1 0 1 x (where x means it’s not important) happens to BLANK the display. This make the code in the function public void Clear() fairly obvious now why it send a 10 to Display().
The 4 pins how do they get set? ok, let us use the digit 9 and now step through the rest of the function. Pin 9 on the Netduino is connected to A or D0 on the 4511, the lowest order bit (ones). 12 is to B or the twos, 11 is to C or the fours and pin 10 to D the highest order bit the eights. You can look to the mask declarations to get a feel for the positions too.
9 is binary 1 0 0 1
We need to set line A to true, line B to false, line C to false and line D to true.
(a & mask) what does that do? ”a” is type byte and mask1 is of type byte. The & says do a bitwise AND of the two values. What’s a bitwise and – (for now – Google it) but I’ll do the math here and might get it across.
1 0 0 1 (9) 0 0 0 1 (mask1) ------- bitwise and says 1 only when all are one 0 0 0 1 (1) Result = 1 1 0 0 1 (9) 0 0 1 0 (mask2) ------- bitwise and says 1 only when all are one 0 0 0 0 (0) Result = 0 1 0 0 1 (9) 0 1 0 0 (mask3) ------- bitwise and says 1 only when all are one 0 0 0 0 (0) Result = 0 1 0 0 1 (9) 1 0 0 0 (mask4) ------- bitwise and says 1 only when all are one 1 0 0 0 (8) Result = 8
Let’s take the results of the first operation. We got a 1. There’s more in that line of code (a & mask1) > 0
Greater than zero completes a comparison. Results in a boolean. True or False. The first part will result in a zero when we need a false result and a true value when the result is anything else 1 or above. In the case we just ran through we had a 1 and an 8, both greater than zero, and so had two lines (the first and last) set to true.
By now you’ve either gone Aha! or Duh or are scratching your head. Either way I am done for now
enjoy.
Not much to say here. Just DO IT! http://www.khanacademy.org/ is a wonderful site. If you have a passion for learning or re-learning you will want to bookmark the site. I reconfirmed my ability to add and subtract
I am going to do every math lesson until I top out (maybe at division).
Free learning – if you have kids – create accounts now. This will help every kid and you’ll be sorry if you don’t also sign up like I have and sharpen you skills.
I love to listen to these guys chat, Leo and Steve. Recently I needed to get a friend up to speed on secure key exchange. Not the simplest topic on the roster. Just how do we share a secret over the Internet. While we know others are watching and intercepting our communications. We do it with math. Math , when used like this, forces you to want to learn even more math. Really, math is fun and you will be smart if you learn math.
The first 15 minutes of this podcast prove to me that the more math you can take in the better off you will be in life.
http://media.grc.com/sn/SN-034.mp3 100% relevant regardless of when it was recorded.
Visa and others. The first time the page came up “verified by Visa” you said cool this is a very good thing Visa is making the web safer. If you thought that you can now go to the back of the class. You should have been thinking what sort of phishing scam is this? Where is the URL bar for this pop up and why would I sign up for this service from this little dialog on some site? Does Visa even have a web site? Does my bank know about this?
Now for those of you at the back of the class the zbot botnet has been augmented to shoot phish in a barrel. You are the phish unfortunately. Thank you Visa for the swimming lessons (NOT).
Click to read more news on the zbot botnet and how it is mimicking the Verified by screens.
http://www.sans.org/newsletters/newsbites/newsbites.php?vol=12&issue=56#sID301
Seems when Rogers did the magic auto renew stuff with apple iTunes or however it is glued together, it all fell apart. I give my experience of auto renew an epic FAIL. July 1st long weekend started Thursday and my iPad 3G stopped working the day before. I am going on a 4 day weekend with 8 geeks that do not yet have iPads. Who each influence 10 to 100+ geeks. They all still don’t have iPads (and none will likely have Rogers 3G iPads). Of all things I am posting this from a computer with a keyboard – how painfully near real time / out of touch is that! I could not bring myself to “show it off” when it had no network access. It was camping in the woods – wifi was distant. 3G would have worked (iPhone had no issues). Several *611 calls have enabled me to talk to many friendly people – none of which have resolved the fact that I have no 3G wireless access via my iPad yet. I seem to have paid for 3G access. Just have not seen any on my iPad yet. It is July 5th today FYI, Rogers.
Rogers – where is the front page link to the solution I need? This did not affect anyone else?
Rogers – where is the email with the link to the fix I need? I have made phone calls…
Rogers where is the phone call and or voice mail telling me what to click to fix this? ou said someone would get back to me.
Apple where is my Bell or Telus SIM (Telus plan looks like it suxs, I’ll take Bell please). Consider sending one out to all iPad owners proactively and thus encourage a competitive mobile data market in Canada.
Rogers please refund me all the missed days – still missing… and credit me a good chunk if I am going to stick around.
Bell, I am probably asking Rogers to get out of my iPad and I’d like to invite you in. Call me.
UPDATE: July 8th – no 3G data yet. Was given a ticket number for the affected users. I assumed they’d put me on a list of iPads to fix when I called them on June 30th… but calling again on July 6th(?) got me on the list (again?). They are keeping a list – are you on the list?
UPDATE: July 12th – no 3G data yet. The main ticket number provided to me was PT00016046 if anyone has any ideas on how to move this along – that’d be nice.
UPDATE: July 17th – OK I woke up today and 3G is now working on my iPad. How’d that magic happen? Not sure. A re-boot helped it sync time properly (was a few minutes off). Now – I have 13 days remaining on my 30 days with zero ability to use data for those days gone by – there has to be something that will just magically fix that too? Ready and waiting for the clock to be reset. It is not my idea of fun to hang out on a support line. Nor is it my idea of fun to be called and told to call support (and maybe later in the day to avoid the wait time). As much as I use rogers (three accounts) I am not wishing this experience on others. Currently the display on the “cellular data” link says it expires on 07/30/10. I hope this date moves – I dread calling yet again, but perhaps I may, just to voice the concept that our agreement has not been met (me data, you money).



