Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

Comment Showing my age... (Score 2) 454

Basic on an Apple II....and pretty much every other computer at that point. That pretty much was the choice for learning how to program back in the mid-80's.

I also picked up Pascal and C shortly thereafter. C stuck, Pascal didn't. I seem to remember learning COBOL and PL/I at some point, along with a bit of fortran.

I've learned so many languages over the years, that I've lost count. Right now I have active projects going in C, HTML5/Javascript, and Python. It's gotten to the point where another language isn't a big deal: it's more about learning libraries than the language itself.

Java ranks near the top of my list in languages I prefer not to program in if I can avoid it.

Comment Re:32*M*B? (Score 1) 227

See the PIC18F67J60. I currently sell a product I developed which includes a complete software TCP/IP stack, HTTP server, SNMP server, ICMP client and server, NTP, and and so on which fits in this device which has 128K of flash and 3.808K of ram. 32MB is enormous.

My total code + static web page storage (in a small external flash) is around 196KB. That isn't anywhere near 32MB.

I'm in the process of moving to a PIC32 platform to be able to support HTTPS and IPv6, along with a lot of other functionality that needs to be in the next version of this product. This is still going to have a code size of well under 1MB (and probably more in the 3-400K range). So I'm not sure where people get off with saying that 32MB is "extremely resource constrained".

Comment C is effectively portable assembly code (Score 1) 641

My opinion about why 'C' is still highly relevant is that there are still many needs for small, tight, code which runs very close to to the metal, and C is ideal for this.

When you look at the output code from a C compiler, it tends to be small and fast, and relatively light on resources. In many cases, with modern compiler optimizations, the resulting code can actually be smaller and faster than all but assembly code written by someone who really knows how to optimize for a specific machine. Almost all embedded development work is done in either C or assembly, and C tends to be faster to write, and portable - so you can move the code to the next project if necessary.

Using any 'modern' object oriented language immediately adds a level of bloat which is generally not acceptable in places where C still shines. These modern programming languages are written for environments where a few extra bytes or a few extra cycles isn't going to cause a problem. When working on a resource-limited platform (aka where you'd kill for a few hundred KB of code space, and more than a few thousand bytes of ram) you're just not going to be able to use a modern language because of the overhead of an object oriented language.

I'd actually predict C is going to grow in the near term, just because of the growth of internet-connected low-resource devices. I actually develop products on a platform which has a complete TCP/IP stack (including web server and SNMP) running in less than 128KB (yes K not M) of memory. These and other similar small platforms are going to be the basis of the 'things' half of the internet of things, all of which are going to have C code at their base.

Comment Re:"Should we go back to paper ballots?" (Score 2) 127

In my area we use a paper, marked, optical-scan ballot. I've seen a couple different variations over the years, but they all have some characteristics in common: They're simple, can be audited by a human, and read by a machine. Our ballots are not counted at the precinct but at the county level due to the population of most of our precincts (we only have a million or so people in our entire very large state).

To handle people with disabilities, we have machines which mark an identical ballot using a special voting-machine like device. This allows those who can't mark a paper ballot to vote, yet still results in an auditable, paper, ballot.

Personally, I think we need to abolish electronic voting in any form which doesn't result in an auditable, verifyable, paper, ballot for each voter.

Comment You'd think they could fight some fraud too... (Score 1) 146

Having been the victim of tax identity theft two years in a row, you'd think those computers could be programmed in a way to detect say, multiple refunds going to the same bank account, or the same IP address submitting thousands of returns and shut these thieves down....or *gasp* even perhaps verify the data which is on a return before sending a refund check... You know, to stop the $5 BILLION in tax refund fraud every year....

Comment Re:I'm OK with ethernet in cars (Score 1) 180

I was recently in Weird Stuff Warehouse in Sunnyvale. I like to walk through the store when I'm in the area just for the walk down memory lane... They have used computer stuff for sale from, well, pretty much the last thirty or so years of computer history.

At one spot in the store, I stopped and picked up a device I hadn't seen for years, and thankfully haven't had to touch one for much longer than that. And then realized that many of my younger networking peers wouldn't have a clue what the heck it was.

What was it you ask? A thicknet (10Base5) ethernet transciever.

Comment Re:Future Accessibility. (Score 1) 336

Remembered one more item...

I personally use insteon for most everything, other than those things which seem better for m-wave - in my case, I use m-wave for door locks, thermostats, etc., which are somewhat slim picking on the insteon side. I like how the insteon works for power control, and m-wave seems way expensive and weird for that stuff.

I haven't yet purchased it so I can't say how it works, but I'm about ready to spring for a Elk M-1 panel in combination with a ISY-994i with their new (beta) m-wave radio. Looks like it should work great.

Comment Future Accessibility. (Score 1) 336

I think the biggest thing you can do is ensure that the home is easy to run wires inside the walls and across floor/ceiling spaces without making a big mess. I recently moved into a new-to-me house and have had to do a fair bit of home automation/network refit. In this case, this is a single story home with a full basement. The basement is finished but has a drop ceiling instead of sheetrock. This makes it really easy to run wires throughout the house since you can run the wires in the space between the ceiling and the dropped ceiling and access the space immediately below any wall space. Need to run a cable into a new spot on a wall? Cut a hole in the wall, put a data ring in the hole, then use a flexible drill bit to drill a hole through the bottom plate and the subfloor. Find the hole underneath and use the drill bit to pull the wire up through. Simple. The basement walls are similar as you can access the top portion of all of the walls above the dropped ceiling. This will also work in a 3 story house as well, just make sure you have a full attic or crawlspace which gives you access to the tops of all of the 2nd story walls.

This helps future-proof the house.

I'd also consider/ensure the following:

1) Make sure there is a NEUTRAL at EVERY electrical box, including switches. Makes things lots easier. I've also gotten in the habit of using an additional conductor from the lightswitch to the light in case I decide to install a fan or similar.

2) Have the electrical contractor use the biggest box that will fit in the wall space. None of these cheap 2" deep things. 22 cubic inches is the size for a single gang box. They are roughly 3.5" deep (the width of a 2x4 wall stud). This is to accomodate the much larger volume of a home-automation switch and/or outlet.

3) Consider truss construction in spaces you'll have to run lots of wires through - it solves the issue with too many holes weakening the structure.

4) Take the advice of others on the thread, and do go ahead and install boxes with conduits on at least each wall. The conduits should be at least 3/4" - 1" would be better. If you've got a dropped ceiling or similar, they just need to be stubbed out into the ceiling/attic area. If you're enclosing, then they need to be run to a central closet or similar.

5) Don't forget satellite, cameras, etc. etc. etc. - run boxes/conduits for them as well.

6) In bedrooms, think about where the bed might be placed and make sure you have outlets on both sides of each bed position. In the master, if you know where the bed is going to be placed, consider adding nightstand height switches and/or boxes for automation controllers, cell chargers, etc.

I probably could keep coming up with other ideas, but that are the main ones...

Comment On my bench, yep an oscilloscope. (Score 2) 215

I design and sell products which generally have a microcontroller at the center. And almost everything is in the digital realm.

Because of the work I do I have a collection of test gear I've accumulated over the years. The things which get the most use? The variable DC power supplies, the multimeters, and yes, the oscilloscope.

The oscilloscope occupies the spot right above where the target sits most of the time. I find it to be very useful to troubleshoot digital realm issues, including things which one would seem to think a logic analyzer would be perfect for. If I'm having a hard time getting two things to talk, say over an I2C bus, I reach for the scope first, since I can see whether or not the lines are toggling as expected. And if they're at the right voltages, and so on. I can also tell if the clock edges are correct and similar. This accounts for like 99% of the problems I run into that I need an external test instrument for.

Yes, I do have various logic analyzers. Two USB ones, a big one I'm about to sell on ebay, and a few more specialized ones (serial protocol analyzer, USB protocol analyzer). Most of the time they sit in their cases on the shelf.


Comment Become a WISP (Score 4, Informative) 239

There are a lot of us out there doing exactly what you're wanting to do, using fixed wireless technology typically from Cambium Networks, Ubiquiti, or Mikrotik.

Some links which will help you find people who are doing this already, and are more than willing to help you start down this path follows. Believe it or not, most operators in the WISP industry are pretty friendly and more than willing to help a new wisp get started with advice and the like.

www.wispa.org - The Industry Association for WISPS.
Animal Farm Users Group
Broadband Heroes Whitepaper
Wireless Cowboys Blog

I'm sure there are others. I'd start by reading what I can, probably joining the (free) email lists on a couple of the sites above, and asking questions. Everyone in the industry was a newbie sometime, and most of us remember what it was like to start out, often with about as much knowledge as you have.

Slashdot Top Deals

Riches cover a multitude of woes. -- Menander