 This is the laboratory notebook of Damon Bruccoleri. Here you will find engrossing, thoughtful and fun commentary/opinion on life, the world, and everything you should be interested in. Leave a comment and let others know what you think about any post here, view my photo gallery, or sign my guestbook.
"...one of the strongest motives that lead men to art and science is escape from everyday life with its painful crudity and hopeless dreariness, from the fetters of one's own ever-shifting desires. A finely tempered nature longs to escape from the personal life into the world of objective perception and thought." - Albert Einstein
|
|
|
|
|
Monday, September 15, 2008 |
| Microsoft has a communications problem! |
|
In my last laboratory entry I presented some points on selecting a cell phone. I left off one feature. I have been deliberating on how to present it. This is a communications problem that even Microsoft and all their powerful highly paid market people are not communicating as of yet. Microsoft, pay attention to this!
You see the Windows Mobile operating system is multitasking. It can not only multi-task the base phone features (such as Bluetooth, Voice Command, GSM, etc..) but it can multi-task user applications. For instance your browser, a Podcast download app, and any other app.
The iPhone is not a multi-tasking operating in this way. It can multitask basic phone operation but only with 1 user app. So for instance one iPhone user has reported to me that if he opens an app that uses the GPS to track his movements while he is riding his bike, if he opens up another app the first app is halted.
So there. I just explained multi-tasking to you (very awkwardly and in too many words). I bet 99% of the people have no clue as to the real value of multi-tasking still. There is another problem here that Microsoft has to deal with.
Because Windows Mobile is multi-tasking it generally 'feels' slower than the iPhone. THAT is a feature that people understand. If your going to take a performance hit then people BETTER understand the differences.
If they cannot communicate the advantages to a multi-tasking OS, then perhaps there are not any to the mobile user. Microsoft has a communications problem!
|
damon at 6:31 PM |
(1) Comments |
Add a comment |
Permalink
|
|
|
Tuesday, September 09, 2008 |
| How to buy your next Mobile Cell Phone |
|
Many people seem to be purchasing an iPhone these days. My opinion is this decision is usually based on some sort of perceived coolness factor. There are many other good highly competitive choices available. In this post I just want you to consider some possible new phone applications and features for yourself while you are shopping for your next phone.
Applications: 1. The phone should be a great phone first and foremost. For this it needs a sensitive radio section. Find a cell phone that has great reception. 2. Bluetooth. Many people use the hands free bluetooth application with their car and hands free devices. Does the phone have voice dialing built into it for true hands free calling? Can you call someone by saying into your handsfree "Call Mary Home"? 3. Tethering. Many cell phones can enable a laptop or desktop to receive internet through them. 4. Music. Many cell phones can play MP3, WMA, AAC or DRM protected content. Sony, Apple, and Microsoft all have their own formats. MP3 is ubiquitous. 5. Stereo Bluetooth provides high fidelity WIRELESS audio. The phone should support A2DP and AVRP bluetooth profiles, Does the phone have an AM or FM radio built in? 6. Download podcasts. Some phones can subscribe to RSS feeds and download podcasts directly to the phone. 7. GPS. Many phones have GPS capability in them. I have not come across a phone with usable GPS hardware. In my opinion the GPS needs to be more sensitive and lock faster, comparable to the dedicated units. Again, IMO, the phones will also need turn-by-turn voice prompting for this to be a viable application. I have not met a phone yet that supports this application. The first phone that does this right will be a killer. 8. Can the phone play internet Radio or TV. 9. Do you need access to Corporate email. Access to POP3 or IMAP accounts?
Features to consider: 1. Do you type a lot? Perhaps you need a keyboard. 2. Will you be downloading web pages or podcasts? Do you need 3G speed? 3. Will you be using the screen? What size screen does your phone have? Is it viewable in daylight? 4. Is a removable battery important? 5. How much memory is in the phone? Does it support a removable memory card? Is the card easily accessible? 6. Are third party applications available? 7. How fast is the response of the phone to applications? 8. Battery life. 9. Does the phone use proprietary or difficult to manage connectors? 10. WiFi. I did not think this was a big feature when I was looking for my phone, but if you start to download large files you will appreciate this feature in a cell phone. 11 GSM or CDMA. The two largest carriers in the US are ATT (GSM) and Verizon (CDMA). The advantage is that an unlocked GSM phone, with SIM card, can be used worldwide. It could be expensive in some countries to use an ATT SIM card. When I was in the Philippines I bought a local card, only $6. 12. Cost.
|
damon at 2:42 PM |
(0) Comments |
Add a comment |
Permalink
|
|
|
Tuesday, September 09, 2008 |
I see the world not as yes/no or true/false, but as levels of grey. This can create a problem. So if I am asked to make a decision, invariable I structure my answer with a passive phrase rather than a unequivocal answer.
The other day my boss asked me "Does this chip need a pull up resistor". We were designing a new PCB. I answered "It's not necessary for us to put one there, but I would like to see one anyway so the chip resets in a known state." The problem here is not that I am being too wordy. Its that he is not getting the yes/no answer he is seeking. I am trying to be too smart. I am trying to give him my answer so HE CAN WEIGH the electrical consequences of putting or not putting the pull up resistor against other consequences and word my answer to communicate this. I am not thinking that he might NOT want to weigh the difficulty of making the change against the electrical consequences of not making it.
My boss did not have the time to decode and think about my answer.
Sometime the user, or person you are communicating with, wants you to make the decision for him. In those cases you present a single option rather than a range of answers.
Examples of when you might want to communicate a single option:
- When the user needs to make an important decision, very quickly.
- When the decision you present is insignificant to the person and a range of options is a nuisance.
- When a range of options is too difficult for the person to comprehend, or the basis for your decision is unknown by the user.
- When you don't want the user to know about other options, or your leading the user.
|
damon at 9:29 AM |
(0) Comments |
Add a comment |
Permalink
|
|
|
Saturday, July 26, 2008 |
| Why are Engineering Tolerances important to design? |
|

Anyone who has driven on the Jackie Robinson Parkway [Queens, NY] has already gained an appreciation of Tolerances. The posted speed limit is 40mph, but even that is too fast. Most drivers new to the parkway try to take it at 55 or 60. Big Mistake. There is a curve going to the Van Wyke or GCP where you can see all the marks made by cars as they side swipe the concrete and stone wall. The lane has a tight tolerance with respect to the width of a car and it makes it hard to navigate. Many years ago I worked closely with a fellow who had a machine design shop. He designed machines for all sorts of industries. He was a mechanical engineer by training. He relied on my company to provide the electronics for his machines. I had an opportunity to ask him about his mechanical designs and he explained that the most important aspect (to him) was tolerancing. For instance, if you create a drawing for a one-off part used in the aerospace industry, it might be acceptable to specify a 0.1 mil tolerance on all your dimensions. Realize what is going to happen. When the machinist gets your drawing he might have to throw out the first 5 parts he makes because he had trouble holding that spec. Eventually he will learn how to make your part to that tight tolerance, possibly he might have to design his own fixtures to help him hold the part as he machines it. Eventually, with much waste, he will make your part. Your part will be expensive, but it may be less expensive than the engineering to realize a 'better' design.  A good mechanical design orients the parts so that they do not need to be manufactured with a tight tolerance. If you have ever assembled furniture from IKEA you might have noticed the large over sized screw holes to allow the part to 'float' with respect to the attached part thus alleviating the need for a tight tolerance. One might think that a very good design then tolerates loose tolerances on all its parts. Such a design could be manufactured 'cheaper.' Well, if you remember back in the '70's how the Asian car manufacturers were advertising how well the parts of their car fit you think otherwise. Loose tolerances could give the perception of a cheaply made product to the consumer. You want your product to be manufactured inexpensively, but not appear cheap.
Tolerancing can take on a different aspect to the software professional. Back in 1981 John Postel coined the "Robustness Principle". In it he advocates that a browser should “Be conservative in what you do, be liberal in what you accept from others.” This holding of loose tolerances has resulted in a problem. See this link. For a browser the specified tolerance should be as tight as possible. Only in this manner can software manufacturers duplicate the performance of the browser over the range of web sites. What conclusion can we make? Sometime a tight tolerance is good, sometimes its not good. But it is ALWAYS important to your design. |
damon at 7:40 AM |
(1) Comments |
Add a comment |
Permalink
|
|
|
Friday, July 18, 2008 |
Is anyone else besides me concerned about the proposals going through Congress these days. Seems to me like they are getting paid off. Why else would the politicians be trying to save these bad loans. They were bad loans the day they were wrote. No one writes a loan for 110% of equity without significant risk. They lost (the banks) their bet.
Lower costs for housing are pro family and good for EVERYONE.
You want to hear my proposal. Let the homeowners walk away from their loans. Thats right. Let the homeowners walk away and legislate a plan for the homeowners to regain their credit ratings. The banks made a bet when they lent the money, its not the place of the Fed or Congress, or the President to remove risk from the market. There is a risk/reward mechanism built into the market already The government is not welcome to give my money to the hedge funds and banks or to guarantee these loans (this is a disguised form of giving away my money.)
Secondly, if the government wants to stimulate the economy, do it like they have always done.Tax rebates, business incentives for investing, and lower energy costs. Yes, lower energy costs are possible, but thats another lab note.
 |
damon at 5:45 AM |
(0) Comments |
Add a comment |
Permalink
|
|
|
Thursday, March 27, 2008 |
| How to find a short on a Printed Circuit Board (PCB) |
|
When I am troubleshooting new PCB's I have a unique technique for finding shorts on PCB's. I actually have to hand the credit for this technique to a business partner, Dr. Ed Kafrissen. He came up with a few non-traditional ways of doing business, and this is one of them.
So let me set up a scenario for you, and then show you Ed's solution. Suppose you have a client and you need to deliver 100 PCB's to him/her quickly. You have someone stuff the boards for you, now you have to verify they work. One of the first tests we would do is to apply power to the new PCB and bring the voltage up slowly. If the power supplies load down, then you got a problem to solve. You got a short on the PCB.
Ed came up with unique solution. We had this old humongous power supply lying around that was capable of suppling 30v at up to 5 amperes. This technique only works if the power supply, like ours, has an adjustment to limit the voltage and current. We would set the voltage to necessary voltage and the current all the way down. Ed would then hook up the PCB, which immediately loaded down the current limited supply. He would turn up the current on the supply and feel on the PCB for a hot spot! Invariably some IC would be stuffed in backwards that our visual inspection did not find, or we would get a PCB which was not completely etched. In those days we got horrendous PCB's.
Anyway, that was Ed's solution to quickly find shorts on a PCB. And it worked well as long as you were careful enough to not burn yourself! Yeow!
|
damon at 10:56 AM |
(6) Comments |
Add a comment |
Permalink
|
|
|
Friday, February 15, 2008 |
| Simplifying the Programming, Concrete Example |
|
I would like to offer a concrete example of simplifying the programming of a product. Years ago I was privileged to be given the opportunity to realize the programming and design of a home automation controller. This was the DHC Toscana home automation controller, still being manufactured by Leviton Mfg. Co.. When we first sat down with management, marketing, sales and all the other interested entities at that company I was literally buried in the number of features on this product. One of the other senior engineers and software guru's there, Dr. Michael Ostrovsky, helped me along and gave me a simple suggestion that cut my project in half!
To understand his suggestion I have to give you a brief technical description of the product. As you can see from the picture the device has a number of buttons and user interface elements to control lights, fan's, switches and other electrical devices you might find in a home. It also has a communications interface where it can receive remote commands from other interfaces devices in the home to control the same electrical devices. Therefore, an engineer might think he had two intertwined overlapping tasks to accomplish. First would be to control the electrical devices from the unit's front panel and transmit that command to other keypads in the home. The second task to control those same electrical devices from the commands received over the communications interface. The contention that could develop from controlling the same devices from several inputs is a classical problem. Mike suggested a better way. Mike was old school, Mike was from Russia. He knew how not to do the same task twice.
He suggested I split my project into two simpler tasks. The first was react to one of the front panel switches being pressed and to transmit the appropriate command indicating this on the communications interface. The second, separate task, was to receive a command over the communications interface and to turn on the light, fan, device or what not. To complete this scenario I had to let the device receive its' own commands, the one it just sent out! This way I only had to debug two separate smaller paths, that were more or less independent. |
damon at 9:53 PM |
(0) Comments |
Add a comment |
Permalink
|
|
|
Friday, February 15, 2008 |
| My 1 best secret to Great Software |
|
Recently I have been thinking about the projects I have been involved with and what helped them become sucessful. I think I finally have something to report to you here in my laboratory notes as to MY 1 best secret to sucessful software.
My first thought was to look at the details of programming languages and techniques. I then thought about on a higher level how the architecture of the software was more important. Then I figured that even more important than architecture was the project management. I think I finally have a root cause to successful projects. Keep the project 'simple.' Now that word is a relative term. The exact nature of 'simplifying a project' depends on the skill of the software team. Second, it does not follow that a simple project produces a simple product. Read On.
I have developed a basis for this claim that this is the 1 most important ingredient to a successful project. As the number of requirements in a project grow, the software complexity grows exponentially (albeit this is a simplistic view) as the following chart shows.

The trick is then to define the project in simple terms yet design a dynamite product. What I want you to think about is where you want to focus your effort: Eliminating elements from the X axis of the chart above or troubleshooting program paths on the Y axis.
|
damon at 9:09 AM |
(1) Comments |
Add a comment |
Permalink
|
|
|
Monday, January 14, 2008 |
| Nokia HF-6W defect, no sound |
|
| Nokia has some serious design problems... and they are not telling anyone! Let me explain.
About 2 years ago I did some shopping for a Bluetooth car speaker phone. I hit upon what I considered the most perfect speaker phone, the Nokia HF-6W. It cost me over $120, but it was worth it (while it lasted). It had a powerful 6w speaker and several microphones that tracked the sound source. It worked great as well.
About a year ago it died. I assumed it was a 'normal' failure. I returned the unit to Nokia returns and they sent me a new unit. This second one failed in the same manner. Further, after doing a search on the internet I found other people are experiencing the same failure of the Nokia HF-6W and here. Nokia's warrenty only covers the unit for one year. This is a design flaw. Nokia should admit it and do right by their customers.
The way the HF-6W speaker phone fails it that no sound comes from the speaker. The speaker is dead. Second, the unit will not reset itself. When the power button and volume up buttons are pressed simultaneously while the device is off, the unit is suppose to revert to its default state. The green and red LED's are suppose to blink as well. I cannot seem to get it to reset. The unit seems to work otherwise, bluetooth connects, etc.
Now my wifes unit, unit #3, failed the same way. Have you stumbled upon my post and are having the same problem?
[UPDATE 02/04/08] Nokia replaced my HF-6w with their HF-33. It has a much smaller speaker and no built in retractable phone charger. The retail price is about 1/2 that of the HF-6w. I am accepting this replacement under the condition that it simply WORK.
|
damon at 8:16 PM |
(2) Comments |
Add a comment |
Permalink
|
|
|
Saturday, January 12, 2008 |
| The Deuce bus service Las Vegas |
|
The "Deuce" is the bus that runs up and down the Las Vegas strip. It's an inexpensive way to get from downtown to anywhere on the strip. I have a story to tell about the Deuce. I had chance to use it several time while here at the CES show.
First you need to know that the name "Deuce" is a triple entandra. The bus is a double decker bus, and a trip costs $2. Some Las Vegas civil authority must have thought it would be cute to name it that. Second thing you need to know is that whenever the bus stops a pre-recorded announcement plays inside and outside the bus. It announces "Ride the Deuce, Have Fun. Only 2 dollars one way, 5 all day."
I want you to know about a couple inaccuracies in that announcement. The bus IS NOT $5 all day. It is $5 for 24 hours. Twice when I got back to my room I threw away the bus pass thinking it would be invalid the next day. So there, reading damon4.com just saved you money.
A second inaccuracy is tha the bus IS NOT fun. It IS pleasurable. It's clean. It is usually on time (they run every 20 minutes and run extra buses during heavy traffic). I must have rode that bus a dozen time waiting for the 'fun'. The most fun I had was watching people hit their heads as they sat in the lower level seat's on either far left/right side of the bus. There are low ceilings in these double decker buses, so watch your head!. The bus (and drivers) is a real pleasure to ride; what a bus should be.
The civil authorities in Vegas who run the bus service should rethink that 'fun' part of the message. I would also like them to consider adopting a different slogan. Instead of the "Deuce" call the bus service "A Nice Pair". So you would have the same double entandra PLUS a whole new set associations to work with! Viva Las Vegas! |
admin4 at 10:55 AM |
(3) Comments |
Add a comment |
Permalink
|
|
|
|
|
|