Subversion branching strategy feature vs release

Subversion branching strategy feature vs release

Posted: kristianps Date: 10.07.2017

We're tool makers and tool users. Embedded developers - both those doing hardware work and those crafting firmware - use a wide range of tools, but it can be awfully hard to distinguish the good from the ugly. Here's thoughts from a number of engineers.

Feel free to submit your own reviews to jack ganssle. Philip Freidin sent a very comprehensive chart of USB instruments, which is here. As with many of their supplies I think it has a power-on button and a button which effects the connection to the loads--a very nice feature. If any of the supplies should trip, they are all instantly disconnected. I did get a surprise one day when the supply tripped for apparently no reason.

Turned out an unused supply was current limited to 0. A little noise got in there! Chris Svec also has a GW Instek power supply: I have a GW Instek dual output power supply which is just okay - it's got a loud fan that runs all the time, and the voltage output seems to drift a bit, but that could be because I nudge the sloppy control dials unknowingly.

The power supply is a GW GPS It puts out 30V 3A, which I need. I've been using a CleverScope CSA USB MSO for a few years now and my decision to purchase it over some less expensive units has been validated time and time again. This is a MHz USB MSO with two analog channels, eight digital channels nine if you include the external trigger which can be displayed along with the other digital channelsand 4 mega-points of memory.

subversion branching strategy feature vs release

In my case I opted for the bit samplers and 10 MHz signal generator options. This USB MSO just seems to be better thought-out than others on the market. It also has a beautiful and intuitive user interface that seems leaps beyond the others I've looked at. In particular, I find the time and voltage scales that are displayed on the edges of the graph to be very useful.

The CleverScope folks are also very good at updating the firmware and software. When I bought this unit it had no serial decoding capabilities. However, thanks to updates, I can now decode UART, SPI, and I2C communications this has come in handy more than once with this scope.

I can also stream captures trigger-by-trigger to disk files for later evaluation. All in all, a very nice and capable unit that I use on a daily basis. Also, it looks like PicoScope just came out with this one their first MSO. Nice feature set, but not much sample memory. I recommend taking a look at the offerings from Seeed Studios. In particular the DSO Nano and DSO Quadbut their other board only, no enclosure products are quite cool and inexpensive.

I have one of the original DSO Nano scopes and find it quite useful. The V2 is a wholly reworked version and includes a signal generator. The whole thing easily fits in a pocket, which is hard to beat for on-the-go or cluttered bench jobs. One tool that I have found extremely useful in my work is the LOGIC logic analyzer made by Saleae. Martin Thompson also likes LOGICand said: And when you consider that the software decodes UART, SPI, I2C straight onto the waveform display as overlaysit's a must have for low-speed serial bus debugging.

It's hard to put a "time-saved" number on it as things suddenly jump out at you instantly when you can see the decoded bus in real time!

Steve deRosier is yet another one who likes the LOGIC: I too love the Logic. It's simple and the price is right. But perhaps the best thing about it is the software is cross-platform.

It took longer than I liked, since I had to run it in a VMWare virtual machine on my Mac, but eventually they released a cross-platform software package. Finally an embedded tools vendor that understands there's other operating systems out there than Windows. On a similar vein to the LOGIC little logic analyser, I surveyed the market for small cheap units a few years back, and we decided on the LOGICPORT from Intronix It is a 34 channel logic analyser that uses time compression to store samples in its rather small buffer, so if you have a slow moving signal you can get quite long traces.

It will also go up to MHz external clocked, or MHz internally clocked. We find it invaluable for I2S and SPI issues, and it also has CAN, I2C, SPI and RS decoders built into the software. I can recommend this unit. Scott Whitney also likes the LogicPort: The info about the Saleae logic analyzer was a good tip.

I also wanted to point out another option, slightly more expensive but with more channels. It's called the LA LogicPortand is a 34 channel analyzer via USB connection, with MHz timing mode or MHz state mode. The cool thing about it is that it provides complex triggering, and directly decodes CAN, I2C, SPI, and RS data streams. It uses clever data compression, essentially recording just changes on each pin, rather than the state of each pin at every clock.

You can order it with a trigger output - highly recommended if you work with mixed signals and want to see an analog waveform in relation to some digital pattern. Of course, as parts shrink, it's getting harder and harder to clip onto the signals you need, but the grabbers that you can get with this product are very high quality.

After a lot of web searching I came across the 'VNWA' offered by SDR-Kits in the UK. This little jewel is an outstanding piece of equipment with an avid following and incredible support.

I don't know if you have come across something called the Open-bench Logic Sniffer OLS but its an open-source logic analyzer based on a PIC and a FPGA.

The other 16 channels are brought out to headers. Although the firmware is currently evolving, the current stable firmware is eminently usable. There are two distinct software platforms available for it: SUMP and something expressly designed for the OLS by a forum member with username of jawi. The first shipping version has FPGA code written by somebody who is not particularly experienced. It works but the performance is less than what is actually possible. The current beta firmware was written by somebody who actually designs large FPGA systems for a living.

He has apparently gotten almost all of the features of an Agilent HP a analyzer into the unit. Charles Manning likes the Rigol scope: I first looked at USB scopes but then ended up just buying a Rigol DSE. Cheaper than many of the USB scopes and doesn't take up PC screen real-estate.

Wilk also weighed in: In response to Charles' comment about a scope: I did almost the exact same thing investigating USB Scopes. I ended up with the Rigol DSE which Davy Jones demonstrated a special modification to bring it to MHz like the DSE. It has more than met my needs and more than paid for itself. A good friend recommended this scope after I was looking for the end-all, be-all device that could do as much as possible in a single package.

He gave me the good advice of buying decent tools that did single things well rather than a single device that did multiple things "just OK". I could always sell these entry level instruments and upgrade. Or, better yet, keep them as "spares" should the day come when I need something more sophisticated. Following that scope, I have purchased and gotten every dollars' worth from a Rigol DM Multimeter and a Protek L Power Supply.

My GW Instek function generator hasn't justified itself yet but I expect it will someday I got it at the tail-end of a debugging session and solved the problems before I needed it. These devices do similar things and are also assets in my debugging toolbox. Gonzalo Sanchez likes Pico Technology 's products: It was a very nice gadget, and the software was really user friendly and feature-rich. Pico has now a very wide range of products, notably scopes up to MHz BW, 8, 12 and 16 bit resolutions, and buffer depths from kS to MS ; some of these are quite affordable.

Some of the models seem to include Arbitrary Waveform Generators, which avoid the purchase of a separate signal generator. Seems to have an SDK that facilitates to connect the scope software to other software tools such as LabView, Matlab and even Excel for those who like it. Another nice feature is that you can download a demo version with 'built-in data' for trying it. Just for Windows users, though drivers for Linux are available in case anyone wants to develop his or her own software.

Please note I have not used them in years, but at the time their scopes were among the best price-performance compromises we could find, and the software at the time was really, really very good.

We did give the Linux drivers a try at the time, and they worked for us, but we did not develop anything useful. Miro Samek has a free set of videos on YouTube which explain the basics and more of writing in C for the ARM Cortex-M series of parts.

This is one of the more important microprocessor families around today. Unlike other C classes, in this series you'll get exposed to both the C code and what the processor is really doing behind the scenes. That's critical info for any embedded developer. Richard Tomkins likes DevDocs: DevDocs works standalone within a browser and integrates with Brackets. Another decent coding standard. I wanted to pass along information about a potentially useful podcast. Though it's not embedded or even engineering specific, I felt that the information would be valuable to many.

The podcasts Manager Tools and Career Tools can be found here. EEWeb has a number of interesting places for electronics people. I find the toolbox on the upper right part of the screen especially useful. The EEWeb German version is an electronic forum that offers electrical and electronic design articles and resources in one place, with electronics and electrical engineering design articles and resources in the area of RF design, analog design, embedded design, PCB design, test and measurement.

Chuck Petras sent some sites that are pretty interesting for those wanting to know more about electronics: Here's a site on basic car audio electronics which is very engaging. Another is geared towards the car audio enthusiast who wants to learn about and repair his equipment. Fred Hugand sent this link to a better diff tool, this one named Beyond Compare. Jack agrees - I use Beyond Compare 3 all of the time. We use Beyond Compare here in our development and we absolutely love it! It has great diff capabilities for instance I like that they show you where your diff is on the line not just the line that is differentyou can re-sync manually your compare we had to do this for ifdef branches of the code that we compared with original no ifdef-ed codeyou can compare folders and many, many more useful features.

Michael Bulgrien likes Beyond Compare. Beyond Compare 3 Professional will be released later this year. Although BC2 has always been a favorite of mine, BC3 will add great new features including a full-screen edit mode, syntax coloring, 3-way merges, dynamic recompare, superb source control integration, and much more.

Version 3 is now available and I'm hearing from readers that they like the 3-way merge. Johann Kok likes Beyond Compare: I can just add my voice to the chorus for Beyond Compare. It boosts any programmers productivity and is simply the best. The latest version can even compare excel, word and pdf files great for comparing 2 versions of a datasheet.

We use Beyond Compare and it is a fabulous tool. It also does file syncing and I use it for moving code and other documents between networked and non-networked computers. It can even be used for backups in 'Mirror files' mode and you can set up rules too so it only handles the files and subdirectories you want it to. I like Araxis Merge website here. Admittedly, it costs a lot more, but it can do a three-way merge, which is very useful in a multi-developer environment when the VCS diff tool can't figure things out.

My favorite file diff too l is vimdiffwhich is an invocation of the vim editor using the -d option. I'm a command line weenie, so I still use GNU diff a lot too. For comparing directories and files, doing merges, and editing, the free WinMerge program is nice; its only disadvantage is that it only runs on Windows.

Perhaps we could encourage some volunteers to help them rewrite the thing using wxWidgets, which means it would be portable to platforms besides Windows. I wrote a binary file comparison tool bd. It's not a GUI tool, but it gets the job done. You can get it here. KDiff3 is a 3-way diff tool. Originally for KDE, but there's a port for Windows. See Homepage and Project page. Rod Bartlett likes WinMerge: Handles folders as well as individual files and has a very intuitive interface.

It's somewhat similar to Microsoft's WinDiff tool though WinMerge appears to be more feature rich. WinMerge is simply awesome. It lets you compare two files side-by-side and do simple editing. I don't know what I'd do without it. This is one of the tools that I'm using for c-source file comparison. Though most of my problems are solved using WINMERGE tool, there are some occasions where other diff tools may not help. During those situations, I could see this WINCMP to be of most useful.

Especially if the files to be compared are changed a lot, I found this to be more useful. One tool I have been using of late is a text editor developed under the GPL hence free and user supported with one champion, a chap named Bram Moolenaar. I'm an enthusiastic Vim user, and I find this quick reference card very handy. Our team uses JEDITa Java based open-source editor which is very extendable and very supportive for development. We used it for C, VHDL, latex We would like to indicate a tool for C development that we have found very helpful.

It is Ristancase Development Assistant for C and eventually for VHDL. The tool contains an intelligent editor, with the possibility to jump to function definitions and implementations, to find every use of a variable or function and so on.

It gives you a lot of syntax checks similar to lintalso with the integration of MISRA checks. Finally it gives you the ability to generate the code documentation; in particular, it is able to write flow diagrams of every routine. It integrates a lot of compilers for different CPUs: The tool is very cheap, even if it is not free.

You could have more information here. Rodrigo Flores suggests ConText h ttp: I have been using them first UE, then UES when it came out for several years and have found them to be comprehensive, powerful tools for local and remote file editing and software development.

They include a basic hex editor and a limited version of IDM's UltraCompare diff tool. They are quite customizable and handle incredibly large files with ease. I've also found their tech support very responsive and eager to please, and they'll entertain any reasonable request for new features in upcoming versions. Jack concurs; it's my go-to editor. Justin Phillips seconds many who have lauded Ultraedit. A fully featured editor with built diff tool and loads of other neat features.

And crisp - a sophisticated editor for both Linux and Win Too complex for my taste but take a look. Ray Keefe likes it too: Ultraedit and Ultrastudio - We use both. A very complete editor with a wide range of features and at an extremely good price point.

The flexible formatting features as well as the clipboard history system, functions tracking, macro editing, searching including use of regular expressions and the general editing behaviour that supports the way programmers want to edit make this a real productivity booster. For project level behaviour, Ultrastudio is great. Many embedded toolsets are getting better IDE's these days but most of them are not up to the level you need them to be.

So this is the answer. All the editing capabilities of Ultraedit with the ability to manage project level builds and including autocomplete and structure element completion. A real time saver. That is one of the reasons I switched over to UltraStudio.

Stephen Pelc sent these comments: I have to second the comments about UltraEdit and Beyond Compare. They do what they say they do. But the kicker is in the technical support - both companies provide good and fast support. Now that BC3 is available on Linux and UEX is in beta for Linux, I can actually use Linux for development these days. The comments about the Foxit PDF reader are also right. What they should also say is that it's really small and really fast - so much so that we use it for on-line help systems using our DocGen literate programming tool and LaTeX to generate the PDF and an easily parsed index file.

However, the tool that saves me most time is paper and pencil. The good old double-ended word processor is still king! My single most useful tool: I started using this back in about at Tektronix, and now use it at Omneon. It has all the hallmarks of a tool engineered by a group that was required to use the editor in order to develop the editor.

There's a huge list of features, but my personal favorites Very fast file browser. Put the cursor on a variable, typedef, etc, hit the appropriate hot-key, and you're taken immediately to the file and line that defines it. Integrates with revision-control systems. I use it with cvs, and the interface it provides is a significant improvement on the cvs command-line interface.

I have to also occasionally use msdev, and vs allows me to set hot keys so they match msdev's. Built-in hex viewer and hex editor. This allows me to make hex replacements or insertions in mpeg video streams.

I occasionally have to deal with code formatted in an utterly foreign style. It's funny how much this interferes with my ability to grasp what's going on. The reformatter changes the style to match the style I'm used to, so I can grok it quickly. There are a collection of enthusiasts at http: Roland Bennett likes PSPad available here. I really appreciate the feedback from users regarding their favorite editors. Having used Visual SlickEdit for many years, I was looking for a free editor when I left the company where I had used it.

Vlad Zeylikman is using Epsilon from Lugaru, Inc. It's not free but whenever someone names a new cool feature, Epsilon had it for years. I find that it's well worth the price: Jon 'Far' McKamey writes: Another good choice is MadEdit. I am shocked and dismayed that your tools page doesn't mention Emacs.

Normally I'd think that it goes without saying, but since vim is called out on there one of the Two Great Editors, but don't tell either side that I have praise for them bothmaybe Emacs should be mentioned too. It's trivial to get on a Linux workstation. For windows I suggest this distribution. Tim McDonough likes Geany: I recently learned about an open source programmer's editor called " Geany " that I like very much so far. It has pre-compiled versions for both Windows and Linux environments and has a lot of nice features for managing software projects, build tools, etc.

Just type this in vim:. If the highlighting needs to be customised, just hack the syntax file Since I habitually flick from code to makefile to linker script, I'd need to enable vim's automatic syntax selection, though. Mind you, I find that I can't read a thing once there's four or five colours scattered all about. My eyes will only read one colour at the time.

Perhaps that's because we didn't have colour for the first half of my three decades at this game. Renan Greinert also had some thoughts on this: It is also possible to highlight those types in Visual Studio even Express editions.

subversion branching strategy feature vs release

I've tested it onand versions. You just have to create a file called "usertype. The content of this file are the types you want to highlight, each one in each line. One of the more unusual IDEs is that from mbed - it's entirely web hosted. Jack wrote a comprehensive review here. Segger's SystemView is a free tool that graphically displays multitasking - you can see transitions between tasks and other events.

It's available for Windows, Linux and OS X. Jack's review is here. Apparently uses the Mingw compiler suite. Has a search function that can work on the current module, all open files, or all files associated with the project. Includes interactive debugger that uses gdb under the hood. The editor does syntax highlighting bold keywords, italic blue comments, green preprocessor statements, purple numbers, and red quoted text. Parses the project file and provides a class view on the side that allows one to jump to the code associated with a function or structure.

Includes CVS integration but it does not work for: Project setup tool includes Windows application, Console application, Static library, DLL, and empty project that select the build and libraries required for the project. I use Microsoft Visual Studio 6 as my all-purpose IDE, for both desktop and embedded development. The abilities of this tool are greatly enhanced using Visual Assist link from Whole Tomato Software.

Works for both Visual Studio 6 and Visual Studio. I've used several versions over the years and find it to be a great help.

There is a relatively new open source, cross platform, IDE tool which is moving forward really fast. While the RC2 release shows off some of the features, the Subversion HEAD really is unbelievable and is usually pretty stable.

The wxSmith plug-in for developing wxWidgets applications is very good for being bleeding-edge. Marc Verwerft sent this link to ctrace: It was specifically written for use in a multi-threaded application, though it will work just fine in a single threaded C application.

The trace calls may be made at user-defined levels. It may also be required to have trace functions only called on a particular thread or logical unit of the application. Isn't that what debuggers are for? Well, yes, though debuggers can be kind of tricky to use when an application is running across multiple threads.

Also, once an application is deployed, for example on an embedded system, using debuggers becomes impractical. In this case, a remote protocol could turn tracing on for parts of the application, and the results may be returned either as a stream, or output to a file on the remote system, and collected via ftp.

Cristina Ionescu likes Eclipse: It offers a huge amount of plugins for various uses. In parallel, installing Cygwin on the computer allows setting the Eclipse C project toolchain to Cygwin others may be used as well. One other part of our own made tools and scripting is in Python, and the PyDev plug-in is perfect for having both editor and interpreter through the IDE. SVN subclipse plug-in allows direct SVN connection for the projects.

Workspaces can be created where several project contents can be compiled for different targets. Make targets are associated to projects. Using this and Doxygen has taken a huge strain off developers in my team because before they used to have several tools. The Eclipse IDE has several versions for Java, PHP, C and other types of projects being written in JAVA itself. That's about all I can say without getting into details for everything. It is indeed more complex and for simple projects it's obviously to complex, but for a large development team, it relieves the number of actions to take to create a target once the whole environment has been installed as desired.

Mohan Paklapati also likes the Eclipse: And supports many languages and lot many plugins are there to support more programming languages and testing while coding feature, if its JAVA programming its having unit testing feature to test while code. If you use vi and its clones especially vimyou should be aware of exuberant ctags linkas it makes navigation in source files much easier.

Then there's this from Christopher Svec: For your list of tools, I suggest checking out cscope: You can find where any C symbol is defined, called, used, called-by, etc. It has its own curses based interface, plus it interfaces very well with vim and emacs. It's open source, and can be found here.

Rod Bartlett likes SourceNavigator link - a good tool for familiarizing yourself with large coding projects when documentation is outdated or non-existent. Allows easy searching within the entire source tree.

Has built-in support for tags and cross reference database. Sadly the database engine used throws errors when building the project files for very large code projects but this is a handy tool for small to medium projects.

My current quest is to find a good search tool to look for strings within one or more file types in a source tree. I currently alternate between GlobalFind and the XP Search function. Neither is quite fast enough on very large ClearCase views and both lack features I'd really like to see. Sadly none of the indexing tools like Google Desktop or Copernic seem to work well with network drives such as those presented by ClearCase.

I'd be very interested to hear about tools other engineers are using to search for strings within files in large source trees. GlobalFind link - A reasonably fast tool for finding files and patterns within files with the ability to walk subdirectories.

I've been using this tool for just over two years and it is excellent. Especially useful when making modifications to a code base that you have little knowledge of, it helps you get a bigger picture of the code set. During the last few weeks I looked at several high-end graphing calculators from TI, HP, and Casio but decided against buying a device I'd use for a while and then forget how to use.

I put it on my Kindle Fire and have started to learn how to use it. No calculator could beat the price, so I thought you and your readers might like to know about it. I just read Jon Titus' recommendation for an Android graphing app. Completely agree with his statement, "I'd use for a while and then forget how to use" regarding hardware calculators. I'd like to recommend www. It's an online graphing calculator loosely based on OS X's Grapher. Also supports sliders so you can interactively explore how a parameter affects a system.

Cliff Brake has a hex calculator link written in Ruby. Rodrigo Flores suggests Calculator. Netlink a nice. No matter how hard I try, I simply cannot get used to a non-RPN calculator. So, one tool I simply cannot do without is a Windows-based RPN calculator called Excaliburwritten by Dave Bernazanni.

The newest version of it 2. All kinds of modes and functions, including scientific, statistics, business, computer science, conversions, and much more, including custom. I have another friend who actually showed me Excalibur in the first place, and he says that its the second tool he puts on every new PC! Terje Frostad also has some RPN information: There's an alternative to the free42 RPN calculator mentioned in your last Embedded Muse Its called Excalibur linkwith current version 2.

I use it every day. Even though it looks similar to my good old trusted HP 15C, it can do a lot more than that. It is like a combination of all the classic HP RPN calculators like HP11C, HP12C, HP15C, and HP16C, and it can still do more, and its all for free. A related funny but true story: I had been using this gem of a tool at work, recently was working with a bright guy from another company. We had to do a conversion, and I said, Wait, Ive got this great tool on my PC.

I almost fell off my chair the guy that I had been working with was the author of this tool that I use every single day! RPN sure is popular in the engineering community!

Luca Matteini August is a fan: I read on EM an advice for an RPN calculator, and well, I'm RPN-addicted too. I "discovered" RPN, quite late, or I better have to admit I underestimated it for years, until I bought an HPS in the early 90s.

I found the answer in the gorgeous clone of my fav calc: Put on it one of the smart skins I use the "Michaels HP" one, compact and close to the real one and you're done, with a real, full featured, RPN calculator: Now the HPS the original one sits resting most of the time, to be used only when the PC is off, saving batteries as well.

John votes for RPN on the Mac: MacOS comes with a very nice calculator that has RPN mode including binary, octal, and hex. Ahh, good old HP calculators! Emphasis here on old -- the newer models were not designed for engineers.

What engineer would have a "hex mode" forcing you to type three keystrokes to enter "A" to "F"? My wife, not an engineer, still uses her year-old HP LED-based RPN HP. The discussion really can't be considered complete without a mention of xcalc link a freeware implementation done by a very nice fellow in Scandinavia. Once I installed it on all my machines I pretty much lost interest in handheld devices - being small and light they sometimes get lost, but my computer is big and heavy and hardly ever get lost.

Don Peterson is into RPN, too: I'm also a big fan of HP calculators and loved the early LED ones. However, my favorite HP calculator was the HPs, which was an HP replacement. I wrote an RPN calculator program that contains many of the elementary HPs functions and runs in a console.

It's intended to how to get 5000 stars on fantage 2016 pretty simple, but it has features like arbitrary precision, interval arithmetic, and pretty tight control over the output formats. Andrew Dyer is an RPN fan: When I am working at the computer, I use the excellent emacs 'calc.

If you are an emacs fan, I can't recommend this highly enough. I mostly use simple stuff, but there is a fairly capable set of math functions in there, and it's just a few keystrokes away.

For other times I have an app for my Android phone called droid48 which is an HP48 replica. Vlad Z isn't so keen on it: I have to say that I never really fell in love with RPN.

I used the HP calculators in the past, when there was nothing else. I held it in my hands with the feeling of awe, like having attained a nirvana-like state. A good hex dump tool is xxd ; you can download it as automatic repair couldnt repair your pc windows 8 command prompt of the vim distribution link.

Embedded Systems Programming used to have link to a hex editor. This one works well. Regulated forex traders tip would be srecord link by Peter Miller, to manipulate target files for embedded systems.

It has default support for numerous file formats, and you can easily add new formats to it. Scott Finneran suggested Peter Miller's srecord tool link. This isn't just a file format conversion tool and it certainly works with more file types than just Motorola S-Records. It is where can i day trade penny stocks incredibly powerful tool for manipulating binary files ie firmware images.

Just a few of the things it can do:. It's used by Motorola and Intel for manipulating Motorola S-Record and Intel Hex format files. This is a very good hex editor. Its most important feature to me i.

It deals elegantly with mixed endianness even in the same fileand its scripting language is close enough to C that it is very easy to pick up. Add in other goodies such as process memory and disk editing, and you've got a very under-priced product.

That's a good thing. There is yet another tool that needs to be mentioned in my opinion. In our company we need to maintain pretty much Assembler sources, so we started to look for something that fits for our needs. I stumbled over the tool called ROBODoc link which we started to use and to extend.

Since it does not know anything about the language it is documenting, it's pretty useful for less structured ones like assembler or to document whole projects various languages and makefiles, etc. Doxygen link is a great to for automatically extracting comments from your code and creating consistent documentation.

If you combine it with Graphviz linkit will generate immensely useful call diagrams. Doxygen link - We are huge fans of this product. It is a great way to document code and also to examine code you are unfamiliar with. It will document code without the included documentation specific comments however it really comes into its own when you do included them. You can also add graphical call graphs and caller graphs and it shows the structure of the include files graphically as well.

You can also select whether to inline the code with the documentation or keep them separate. And it creates references for every define, macro, variable and function in the entire project. For the graphics make sure you also install the Graphviz tool ink. Free and very comprehensive. With this, you can embed state machine, flow charts and execution or data flow diagrams directly into the Doxygen documentation and you need it to get the best results from the other graphics Doxygen produces.

I think this tip - very, very simple tip - is useful in tracking development and debugging efforts. In the MPLAB IDE one can add a text file to the project file list under Other files. The file is a mouse click away and can be used to collect or capture notes, ideas, and in tracking development and debugging efforts which is a tedious stock market prediction by a mixture of genetic-neural experts that often falls in the cracks.

I would like to see this feature in all IDEs. I'd like to mention Tiddlywiki link. Tiddlywiki is a complete wiki-web in one HTML file.

It works with most browsers, including Firefox and IE. I find it to be a very useful journaling tool. I keep my development diaries in a Tiddlywiki, the search, tagging and linking functions are very useful.

Olav Haugan likes it, too: Regarding tool for easily searchable personal knowledge-base I think that TiddlyWiki is a very useful tool in this regard. It is a single self-contained HTML file that acts as your own personal wiki.

It is portable since it's a single file and can easily be stored in the "cloud" to synchronize access between computers. It is highly customizable with plugin support and customizable style sheets. I have a piece of software that I would like to recommend.

It is not free, but I use it everyday. It is a free-form database records are note cards and you can define fields or not and its most powerful feature is the neural search. It will return every card that contains the list of words that you type in the search field.

I put everything in it that I have trouble remembering and can always quickly access it. The program is called Info-Select link and I have been using it for many years. Years ago I had an idea for a hierarchically organized information manager. I then found a number employee stock purchase plan etrade them on the web Leo, TreePad, KeyNote.

I tried them and settled on KeyNote link. It's a Windows only program. It's simple and easy to use. Now you've got a place to stick all those tidbits of knowledge. It may not be maintained anymore, but the current version is working fine for me. John Kaasgaard likes Wikis: The hottest word now a days. If you need a wiki and don't know exactly 'what' you need. Well start looking here link. I think there are about various wikis, with a very very nice comparison between them.

A better way of organizing our ideas or the projects you work on - or just 'giving away information' It a great tool, as they advertise, for understanding legacy code. And some versions also have a MISRA checker. It is also great for review or QC, to see if the design has been followed in coding.

So I was hoping that it would how do i make money with my wapka site allow forward flowcharting, that is, I can use the same for creating flowcharts instead of a regular flowcharting only tool. But it cannot be used like that. Another interesting aspect; now this tool can be "rented", that is any version can be bought for a limited period of time in multiples of 1 month.

This will be handy for team leads who are unable to convince the management of the value of the product. Bruno Muswieck has an alternative stockland rockhampton trading hours christmas Crystal Revs: I found a free tool to convert how to make money from eurozone crisis code to flowchart and the structure of the program on tree view style.

Using a print to pdf tool you have a good tool for documentation and to help you to understand code. It's a nice tool not so powerful like Crystal, but it's for free, nice! I would recommend Qfsm as a tool that helps create finite state machine diagrams and does this task much better than does Visio.

For a while I have been reviewing FPGA development and have used Qfsm in this work. From the Qfsm About window the tool is described as "A graphical tool for designing and simulating finite state machines". From the Qfsm page on Sourceforge: We are very happy to announce that Qfsm won an "Editors pick" award by Brothersoft, one of the leading software download sites.

I might say that because Qfsm could be seen as a "documentation" tool it might not gain acceptance from communities that typically disdain documentation, e. Jeff Barth likes Evernote link: It's easy to store web links, or entire web pages, or selections. Plus make text notes, audio notes, drag pictures into notes, add tables, etc.

And it syncs across all major OS's and smart phones. I use a paid-for PIM called RightNote. It's normally here but the website is under maintenance as I type this.

RightNote stores the information on my PC. It has all the features Dave mentioned tabs, tree hierarchy, spreadsheets, rich formatting, links, images etc. I keep links, meeting notes, to-do lists, "maybe someday" ideas, and more in RightNote. I even have a password protected tab where I keep access details for the various password protected things at work, so I only have to remember one password.

Content can be exported to various formats. It how to purchase anz shares built-in search capability. Another popular PIM is Evernote linkwhich also has apps for mobile devices; data is stored in the cloud so you can access the same data from different platforms.

Evernote has a free version and a subscription version with more features. I'm unable to access Evernote from work due to company network security restrictions, but I use it on my smart phone for non-work information. I assume the PC version of Evernote can do what RightNote earn money yahoo voices do, with some differences. For example, while RightNote has its own spreadsheet functionality, I've read that Evernote lets you attach an Excel spreadsheet so it's stored in the cloud but it uses your locally installed Excel to open it.

I use a little program called axxCardfile link which I have found extremely useful. It is a reinterpretation of the Win 3. Basically I have a deck for each general topicand then I can paste virtually any sort if info in almost any format into a card. Since every "card" is blank, and there are no pre-defined fields, virtually anyone can use azzCardfile as a sort of database.

With azzCardfile, everything is wide open. Sure, it's not a database in the true sense of the word, but it's close enough. Strategies for binary option trading tutorials far as features go, I really can't go into every one of them. There are a ton of features that I've never used.

Features that I have used include:. Format text as you would in any normal word processor, including bold, italics, changing text and background color, text size, etc. Create hyperlinks pointing to web pages.

All pages are searchable. Search within a card, or search all cards for maybank malaysia forex exchange rate specific word or phrase. All cards are printable. Tony Garland has a couple of favorites: Another set of tools that I use to keep track of various tidbits of information: This means that you can easily refer to, enter and idiots guide to stock options your notes in an easy-to-use reliable wiki running on the device you almost always have with how much money does a boeing 747 pilot make. What's especially great about trunknotes in the day-to-day engineering battle is it has a "Wi-Fi Sharing" feature which, when enabled, allows you to access trunknotes from within any browser on another machine on the local wireless network.

What this means is that you can keep a browser window open on your main development machine using a URL subversion branching strategy feature vs release trunknotes provides which gives stock market dhaka bangladesh full access to trunknotes as if it were running on your local machine-although it is still on your portable device. The web interface is fully capable of creating, deleting, editing, and searching-just like on the actual device.

Except you have the efficiency of your large PC display and full keyboard. Then, whenever you run off somewhere, you grab your portable device and it has everything on it.

Another nice feature is Dropbox synchronization. I use this to make sure my notes are backed up on the PC locally and as an interface with the other half of my equation: Vimwiki can be configured to work pretty well with trunknotes files including the file extension and most of the wiki markup syntax. This gives me the best of both worlds: I can use trunknotes stand-alone even from my PC or I can use vim or gvim with vimwiki.

This means I can do all my trunknotes editing using powerful vim features and vimwiki allows global wiki page renames and other great features including super flexible and powerful search although trunknotes does well in that department. Jack Ganssle likes uncrustify to clean up the source. This is one of the most powerful and configurable pretty printers around.

There are about configuration options and almost, unfortunately, no documentation. Several configuration files are included; defaults. Uncrustify will adjust spacing, tabs, brace placement, spaces around operators and much more.

It can change a multi-line function declaration so the parameters are all vertically aligned. I ran it against an line C source file and the execution time was perhaps a quarter second on a Windows 8. Uncrustify is free and available here. There's a GUI front what does the slang term money maker mean for Macs available here which makes setting the configuration options a lot easier.

William Leara has an call option break even formula write-up about a GUI for the Uncrustify code beautifier here.

Pretty print code highlighting n-up file printing utility link very useful for printing 1 and 2 up source listings with line numbers, code highlighting bold keywords, italic commentsand long line wrapping. Can select various output formats, such as columns wide landscape text printing, and save the setups with names for recall. Also there is support for Postscript file printing using the ghostscript and gsview programs, and a print spooler capability. Also offers a command line mode.

It allows you to print multiple sheets on one page, and makes double-sided printing on manual duplex printers fairly painless. I'm especially fond of the japanese stock market crash booklet egold currency trader, but I'd say that its biggest benefit lies in its ability to show you the print job before it goes off to the printer.

I use this all the time to combine multiple print jobs of web pages, for instancere-order them, and delete unnecessary pages e. Another important tool is Indent link. Formatting the jforex review code makes the bugs easier to find, it also pleases your mind, since what you see is exact formatted the way you like it. The days where you make money with adsense pdf with your colleges.

Pre-process your source file with Indent, and you got it exactly as you want it to. It also improves code-walkthrough, and bug-tracking others code Highlight Code Converter link. Syntax and keyword color highlighting, indenting, etc. Supports languages, 40 pre-defined color schemes. Supports user defined color schemes and language definition files.

Windows and Linux versions. A Google search for PERT brought up the following tutorial among other references link. Allen Paul sent this link to PlanBee l ink.

For PERT and Gantt charting, the open-source Gantt-Project is worth checking out. It does both Gantt and PERT charts and uses an XML file format, so you can easily parse your data files and integrate it with other tools. Scott Winder likes this tool for software design: The floating license system is easy to use, it will integrate with most common version control systems, and for very large projects, the Corporate Edition can be used against a client-server database back-end Oracle, MySQL, etc.

EA is updated quite frequently, and a free day trial is available. Their customer and sales support staff are also quite helpful. For drawing UML diagrams and also generate them from existing code I use Metamill link. It does a great job and is also very affordable. Ajay Wazir suggested CodeDesignerwhich translates various state and related diagrams to source code: Do check out Ed Sutter's strategic stock trading epub HyperTerminal replacement called uCon.

Also see the FAQ. Several people suggested Ethereal. On the topic of tools: I highly recommend Ethereal get it here for Ethernet packet sniffing. We just got done adding an Ethernet interface to several of our products and this was indispensable. It's available for Windows, Linux, and Unix. However, Ethereal is no longer under development, so check out Wireshark link which can inspect hundreds of protocols.

Alejandro Weinstein suggests Bray's Terminal link. Terminal is a simple serial port COM terminal emulation program. It can be used for communication with different devices such as modems, routers, embedded uC systems, GSM phones. It is very useful debugging tool for serial communication applications. It is not an Hyperterminal kind of terminal. It is really oriented toward embedded developing. And it is free. I'm using Docklight http: It's great, and holds several nice features, if you're doing embedded work, tracing between to subjects, or just mangling with the products' Service interface.

Royce Muchmore weighed in with this on Docklight: I see that Docklight is listed as a useful communication tool in your 'Tools for Embedded Developers' page. However, I don't think the description gives the tool nearly enough credit. Docklight does provide the standard terminal interface with the ability to transmit and receive characters and log serial communication to a file. In addition, there are several key features that Docklight provides:.

Ken Smith recommends two tools: My favorite productivity tool of all time is GNU screen. At a minimum, it gives you tabs in your xterm or other terminal emulator so you can have multiple virtual xterms in a single window. You can detach a screen and the processes that are running in it will remain running. For example, you can detach your screen at the end of the day, drive home, and reattach and you'll see the exact same window that you were looking at before.

This is great for checking on long running processes. It can also connect to serial ports. The second tool I can't live without is tcpdump for debugging network issues. It's like wireshark or ethereal but it is strictly a command line tool. It links with libpcap and can exchange files with other tools that support that format.

Adrian Alexandrov like Termite link. There's one terminal I've been using for year or so. And it seems to be very handy. It is a simple rs terminal for windows works with windows 7, too.

Features worth mentioning are:. There's a good summary of the differences between decentralized and centralized version control systems in Queue magazine here.

TortoiseGIT should be mentioned. Except from the basic difference between a centralized VCS SVN and a distributed VCS GIT is fannie mae stock worth buying two are equally powerful and quite similar. GIT especially has strengths for e. Back forex brokers commission the ground, you are then able to synchronize your local repository with the "origin" which may be a central server or another computer of a co-worker.

TortoiseGIT, just like TortoiseSVN, gives you icon overlays for modified or new files and allows for easy operation from within Windows Explorer.

Also, Microsoft's TFS Server offers GIT integration in some minor degree. Yet, GIT comes with more options, thus being a bit harder to grasp in the beginning. Switch to another branch and GIT will simply replace the files like they stock market sms alert. Switch back to your master branch strategic stock trading epub you are where you initially started.

I prefer to place software in some sort of VCS system as it is being developed, mostly to keep a backup in case I clobber a file, but it also helps to see the development progression. I once consulted for a small company for a few days to solve a problem they were having with some embedded firmware. Once we got the software working I suggested they update their VCS repository before making any more changes so we could recover the working copy if necessary, but they insisted on making a few small changes first.

They ended up with a non-working version and could not reconstruct the working version. To start off, I suggest CVS with WinCVS GUI front end. WinCVS provides a graphical tree structure on the left similar to Windows Explorer, and a display on the right of files that are and are not in CVS, whether the CVS tracked files are modified Includes capability for almost every CVS command you can think of, along with the ability to type any command in a command line window.

CVS files are stored in a central repository that can be on your computer or another computer running a CVS server. Also uses a local subdirectory file structure that identifies the repository and current workspace file information. Tagging specific revision of files, comments for each update, branching for those cases where you need to continue new product development and perform maintenance updates on indicators advisors for m n frontstocks free on binary options prior release.

Commands include creating a repository, importing subversion branching strategy feature vs release exporting a directory tree, tagging and branching, checkout, update working file with repository changes, committing a file to the repository, adding text, binary and Unicode files, difference of working file versus repository and other combinations, annotated listing showing 1 binary options 7 seats trading version number associated with each line, module status listing, graphical branch structure diagram with ability to select specific tree locations, option for file locking editing, watch notification.

Subversion and TortoiseSVN link: Prefers to work with directory trees, but using its repo[sitory]-browser, it is possible to create a subfolder and put a single file into Subversion. I found it a little difficult to get right the first time, but once set up it is easy to work with. TortoiseSVN is a free open-source client for the Subversion version control system. That is, TortoiseSVN manages files and directories over time. Files are stored in a central repository.

The repository is much like an ordinary file server, except that it remembers every change ever made to your files and directories. This allows you to recover older versions of your files and examine the history of how and when your data changed. TortoiseSVN adds Shell integration, Icon overlays for file status, explorer context submenu.

Some of the many Subversion features that may be of particular interest:. Also RCS probably deserves mention, although I think CVS and Subversion trump RCS. Rodrigo Flores adds that there's a version for CVS: Find it aurum options strategies llc ny and here. Gordon Brandly does find a role for RCS: I've been using ComponentSoftware's RCS link for years -- it's available free for individual use.

It doesn't do project branching or many of the other advanced things the other two do, but it's far easier to learn. If I remember right, I was up and running with CS RCS within about half an hour of downloading it.

I've heard comments on the nternet that the other two take days to learn, and I certainly got that impression when I looked at the documentation for both of them. If we ever hire more programmers or starting doing more complicated software projects then we'll probably put in the effort to learn how to operate Subversion or something like it, but until then CS RCS fits our needs almost perfectly.

Dave Kellogg like TrackBack: A fairly new tool that I find very useful is TrackBack, from Scientific Toolworks fast ways for a teenager to make money. TrackBack runs in the background and saves a copy of a file every time it is written to disk. Thus it provides a sort of poor mans VCS by keeping every version of each file Im working on, prior forex trading companies in uk committing it to the official Version Control.

TrackBack is very configurable regarding which directories and files to back up, and works with any type of file.

What is Your Branching Model?

I find TrackBack to be an extremely powerful enabler, because I am more confident in 5 minute binary options forum strategy trading forward rapidly because I know that I can back-track if needed. A free eval is available, and installation is painless. Recommended as very worthwhile insurance. You mentioned Best book for indian stock market beginners TrackBack in the last Embedded Muse; I found one that is free-as-in-beer that seems to do the same thing: Works OK on WinXP Pro.

I was reading Jack's tools page which looks like a very useful page and was surprised to not find Perforce in the list of version control tools. So I thought I'd offer it for submission to the list. I've used this on a couple of projects and like it. I particularly like their support which IME has been outstanding.

I wish other vendors were so easy to deal with and so helpful. For small projects they have a free non-expiring two user license. Lots of integration with other tools. Philippe Cau likes darcs: I'm using darcs hereit exists on many OS. My company is working with something close to CVS, but on my workstation I'm versioning all my work many times a day with darcs. It saves me many hours a week.

Instead of wondering what I have broken during an update, I can follow many records I have done. Plus, I discovered an other point of view of versioning, a global point of view instead of a file point of view. Ray Keefe likes Team Coherence. We selected it for 2 features we particularly liked: So we can have generic code we use for all our clients and mirror that to each client without them having to know anything about the other clients or our internal project structure. It seems each client has a different theory on file and directory structures so this gives us forex carry trade interest flexibility while keeping to the 'write it once' maxim closely followed by the 'so you only have to test it once' maxim.

And of course, updates to any version are automatically reflected back to all versions. So you have to be careful as this can spread defects just as effectively as features.

No need to manage that or have any down time. Revision control pays for itself every week in my experience. As we all know, web research constitutes a significant part of any development. And information capturing and gathering is a big part of this process. I don't remember how many bookmark managers I tried - with no big success - until I've found the ContentSaver link. It saves complete web pages or clippings on a fly, edits and annotates, organizes and categorizes, has great search options and many, many more.

After I've tried it, I will never go to any bookmark managers. Not free, but it saves so much time that it easily pays for itself. Highly recommend it to anyone who spends any significant time for Internet research and I am not affiliated in any way with Macropool! It does have a free trial I used it for one day and decided to buy.

Here's an open source web authoring tool that's simple to set up and use - NVU: The people at Adobe have forgotten the simple roots that their Acrobat reader used to have. Now if you want to read PDF files, you have to download 17 MB of junk. Forget that -- get Foxit reader, a fast PDF viewer.

They didn't screw up the scroll wheel support like Adobe did. The tool Foxit is mentioned for viewing PDF files. Something I really wanted to be able to do was add notes to PDF files without having to buy the Adobe version that supports that feature.

I had trouble with Foxit crashing on Windows platforms when I tried to use its "notes" feature. However, I've had no trouble using the free PDF-XChange viewer from this site to put notes in PDF files. It's really powerful and, like Foxit, allows you to use the scroll wheel for smoothly scrolling through documents. Here's some free PDF conversion software. It can convert PDFs to editable formats like Excel, Word and PowerPoint and also create PDFs from many different Windows documents.

It requires ema forex adalah software installation, only an email address where links to converted documents are sent. Someone already mentioned Copernic Desktop Search which I use for my files as well as my email--it's incredibly potent and somewhat addictive.

But I'd like to add that Copernic has had other search-related products on the market for quite some time. I own the professional version of Copernic Agent get it herel and have used its predecessors as well over the years, and I can only describe it as how does boing boing make money search tool to use when Google just doesn't cut it.

They have a multitude of search chittagong stock exchange ipo lottery result and features galore--there are even Programming searches which have expanded to cover several different languages since they first added a programming search at my request several years ago.

Oh, and the last time I used their customer support said requestthey were quite responsive. Charlie Wallace likes Putty: Jack is a fan of Putty, too. I switched to a Mac laptop a few months ago. Here's a plug for the free FileZilla FTP tool. It's small, fast, and doesn't continually nag idiots guide to stock options updates.

Linux and Mac versions are available, though I have not used those. It will queue multiple file transfer and can even be configured to limit bandwidth usage. I find FileZilla so useful it's pinned to my task bar. There is a server version available as well, also for free. If you need a database, the open source MySQL available here could be a good choice for you.

On Windows, it hooks up easily with an ODBC driver and lets you connect to its databases with the Open Office programs. We all have to keep track of lots of logins and passwords these days.

I like to use KeePass link for this. Another good tool is Password Safe linkbut I like KeePass just a little better. If you're interested in getting off the Microsoft upgrade-every-few-years treadmill, take a look at Open Office it's here. I used MS Word for 20 years, so it took a bit of effort on my part to switch over, since I had numerous macros that helped me stock broker certification in india my work.

The main program I axis bank online trading of share is Writer, which looks a bit like MS Word. To be objective, be warned that OO Writer crashes more frequently than Word does.

However, to its credit, there was only one time where I lost any work its recovery process works very well. On the other hand, I've had MS Word absolutely trash some documents to where they were unrecoverable -- and this resulted in a lot of lost work.

Even with the crashes, OO is in my opinion a better tool than Word. Let's you modify your hard drive id. Rod Bartlett likes ack! This capability allows me to pinpoint search results of interest without having to wade through pages of matches which aren't really interesting. It is aware of typical file extensions for many programming languages but can be customized to support new ones as well. I use its support of parameters within environment variables to be able to limit searches to platform specific portions of our code base.

Rod Bartlett also recommends Hex to ASCII text converter - Like most programmers, I have an unreasonable hatred of repetitive and tedious tasks like converting hexadecimal byte values in memory dumps to their ASCII equivalents.

This web based tool allows me to paste a group of hex bytes, words, or longwords and see their ASCII equivalents immediately. Jack Ganssle has a serious addiction to the Unix command shell and use it for all sorts of scripting needs. Cygwin is one option to move those capabilities to Windows, but the UnxUtils are free. There are about tools like grep, awk, sed, tr all zipped together. Ben prefers GnuWin32 Tools: Instead of UnxTools try using GnuWin32 Tools - http: They have a lot more ported over to Windows as native tools and there is even a nice "installer" http: Jack Ganssle says another option for creating complex scripts under Windows is the free AutoHotKey.

It sure beats writing C code if you're doing a similar operation to a mass of text files, for instance. I have found that it can be tedious to get the scripts right.

Here are the comments from one of my AutoHotKey scripts that give a flavor for what it can do. The entire script, with comments, is lines:. If you are looking for a good search tool, try InfoRapid Search And Replace. It has one of the fastest search engines I have seen so far, and I use it regularly for searching strings in files even in subdirectories where other search tools do not generate a hit.

Ray Keefe makes this suggestion: Another excellent Windows file searching tool is Agent Ransack link which has a free lite version that permits commercial use. Dave Kellogg writes about several tools: This is WAY more powerful than your fathers GREP. It can even GREP on file names and paths. It knows how to search inside of Word, Excel, PDF, and ZIP files and many others.

It can do searches with exclusions that combine date, size, attributes, contents including RegExand file name including RegEx. Like any good tool, it is scriptable. It is the best search tool that I have found.

If all you have ever used is Windows Screen Print, you are in for an amazing surprise. Being able to clip and add mark-up to a screen shot is a huge enabler. It is very helpful for interacting with tool vendors, when resolving problems.

Ray Keefe is also on-board: Snagit link - We also use this screen capture utility and it saves a lot of time.

Our primary use is generating documentation of programming procedures, testing procedures and program operation. The ability to capture the current window so we can paste it into the documentation is a real time saver and it operates quickly and efficiently with a range of graphics tools for adding features like arrows and text labels.

Great for capturing a PCB from our CAD package then adding arrows pointing to test points with annotations about what the test point is for and colour coding the lot to make it easy to identify the test point. Also great for capturing the details of bugs so you can send of bug reports with evidence from their own windows. In your latest newsletter, snagit was mentioned. After having used snagit for many years, I now switched to greenshot link. Capture a region of your screen, apply text and shapes, output to file, clipboard or printer.

It does not record movies. It costs less open source but will do less also. It also uses less resources. Carl VanWormer sent this: My preferred default is to capture a mouse defined rectangle after hitting the print-screen key. The resultant rectangle pops into an image editor for any pretty arrows and notes, with that result able to be printed or saved as a graphics file.

This file was brought to my attention by Gizmowhere I have found most of my current favorite programs and utilities. Check out their reviews. David Hunt uses the screenshot feature in Dropbox, then edit that with FastStone Image Editor. FastStone is lightweight and snappy Using the Dropbox screenshot feature has a side benefit It also make the screenshots available across all of my machines 9 so I don't have to fool around with manual file transfers.

Here is how to enable that feature. Bruce Wedding August commented: I saw someone recommended Snag-It by Techsmith. To really take training and instruction to another level, look at Camtasia Studio by the same company. This is screen recording software which allows you to specify an area of the desktop and make a video of your actions. It also records your voice. This is great for training on processes.

It is also excellent documentation on how to perform builds, debugging etc. The uses are unlimited. He also suggested TechSmith's free Jing. It seems to be a scaled-down version of SnagIt. So did Roger Ball: I'll second Bruce Wedding's recommendation of Camtasia from ToolSmith.

I used it to create a set of user tutorials on one of our new products a couple of years ago. My thumb is way up on Camtasia. Jim Donelson gives a vote for CamStudio: I can't compare to Camtasia. For Windows, check out this site -- especially Process Explorer. It's a nice replacement for Windows' Task Manager. The mention of InfoSelect made me think of a free tool that I use a few times a day. It's Copernic desktop search.

It indexes all your emails. It's blazingly fast and has an intuitive interface. I tried Google desktop search, but, for me Copernic was superior. A free clipboard manager that stores past clipboard entries but also has template capabilities and a versatile plug-in architecture for custom manipulation of copied clips.

Once you get used to using this one, it can be very frustrating to work on a computer that doesn't have it installed. Archis Bhave recommends Launchy here is a keystroke launcher with catalog facility.

No more hassles to find where one stored the files, may they be images or data sheets. Runs on Linux with a source build and windows both. Can launch installed applications as well. Well-known author Jam Axelson suggested three tools: Clipmate Clipboard Extender link remembers and manages up to thousands of clipboard items. The PowerPaste feature will easily paste a series of clips in sequence. Ultramon from here helps manage multiple monitors, including easy moving of maximized windows and optional custom taskbars for each monitor.

David Bley likes MWSnap link - This is a screen capture tool. It lets you capture a part or all of the screen and put the image into your word document. Great for manuals, procedures and instructions. MWSnap link - This is a screen capture tool.

I haven't tried MWSnsap, and it's hard to argue with the price freebut I've been very happy with CaptureWizPro by PixelMetrics. Sometimes it's handy to turn something into a PDF. If your company won't spring for an overpriced Adobe tool, you can get free tools like PDFCreator for Windows which will insert itself in the printing stream and convert the output to a PDF file.

Frankly, though, I don't use it anymore, since I switched from MS Office to Open Office a number of years ago. There's a button on the OO toolbar to convert the file you have open word processing document, spreadsheet, presentation, drawing, etc. I also do a lot of equation writing and Open Office's equation writing tools are excellent and much faster to use than Word's.

If you know LaTeX or TeX, the OO equation writer should look pretty familiar. Here's a cheatsheet I use. I don't have a copy of Adobe Acrobat, but I sometimes need to make simple changes to a PDF file. You need python and a PDF python library.

Very handy and free when you need it. I'm using PtrScr program to make screenshot under Windows. It is very useful when you must write some documentation or make a presentation too. Jack Ganssle likes Second Copy link: Without a reasonable backup strategy you might as well junk the computer. As a certified old-timer I have never caved into Microsoft's evil My Documents default directory structure, and save all important files in c: Second Copy lets you create various backup profiles, and one of those automatically copies that directory to an external hard drive every evening.

But first I have it run a DOS script that backs up the other machines here into a subdirectory under c: I keep the same directory structure on the laptop, and use Second Copy to keep c: And another profile copies everything to a Thumb drive. The program only copies files that have changed, and you can have it keep as many old copies of files as you'd like in an archive directory.

For complete system snapshots we use Shadow Protect from Storage Craft l ink. We have set it up to do full system snapshots weekly and 2 hourly incremental backups. The recovery console lets you map the repository as a drive and you can browse it so it is also great if a file gets trashed and you just want to go back to a version from more than 2 hours ago.

This is useful for files not in our revision control system such as installed executables that get trashed by an upgrade that goes wrong. My sister turned me on to Zoteroa bibliographic plugin for Firefox. It lets you capture web page content and save it on your computer and later create a bibliography from the things you found.

You can choose from a variety of bibliography formats. An important subtlety is that you have the web page's content on the day you saved it -- important for sites that have dynamic content.

I used the Scrapbook Firefox plugin for a few years, but found Zotero a better tool in most ways. For synchronizing I use AllWay Sync link. You can set up profiles for different directories with different rules for each and it only sync the file difference to speed up the process. I have a similar backup scheme in place. But I'm currently not using a commercial backup software. Instead, I'm using hand-crafted scripts and at the heart is Microsoft's " robocopy " "robust file copy for Windows" command-line tool, part of "Windows Server Resource Kit Tools" rktoolswhich can be downloaded from Microsoft.

This tool is definitely worth looking at, as a decent replacement for "copy", "xcopy" but also goes beyond e. Martin Jahn also likes Total Commander: The most important of my can't-miss tools for over ten years is Christian Ghisler's "Total Commander" link.

It's a fast file manager for Windows with numerous features built-in, well-suited for operating by key strokes, boosting productivity. An unlimited, fully-functioning evaluation version lets you try it without hurry and the registration price is very affordable and includes updates forever.

Rich Ries echoed others' compliments about Total Commander: TC also has a DIY network feature which allows me to transmit files between two computers. The one is an XP machine with NO floppy drives, but thumb drives; the other is a W machine with NO thumb drives, but floppy drives.

The W is my work machine do the development there ; the XP is the company approved networking machine which I found impossible to get my DOS-based development software to run on properly. TC allows me to transfer the files relatively easily. The drawback is that I have to do a manual refresh Ctrl-R to see the new files. I didn't see rdiff-backup on your site. I use rdiff-backup for automatic weekly incremental backups of my active working directories to an external hard drive.

Richard Tomkins submitted the following: Number one and this is a really great tool, DraftSight, a free FREEprofessional 2D CAD application from Dassault Systemes, it runs on Macintosh, Linux and Windows platforms and it does DWG AutoCAD files, opening, editing and saving. Number two is DesignSpark, a free FREESchematic capture, design and PCB layout application, it reads Eagle files and will work with Eagle libraries, it does 3D board images with the use of Google Sketchup.

It runs on Windows. Steve Karg wrote about Kicad: There is a project called Kicad which is open source GPL software for the creation of electronic schematic diagrams and printed circuit board artwork. It is cross platform i. The example layouts they include are pretty slick, especially the 3D view. The home page is here. There is a fairly active users group here. Another very capable schematic tool and PCB package, all in one is Kicad. Archis Bhave likes KiCAD: Nice for the schematics, good for designing quick prototypes.

Talking about development tools, and PCB layout in particular, I use Paint Shop Pro. Printing at dpi gives a tracking image. I email the layout as a JPEG to a PCB fabricator, they add on a tenner to convert it to their format and send me a little parcel of PCBs a few days later. I wouldn't recommend this method for anything big, but for small jobs it's a breeze. Scott Rosenthal cued me in to free schematic capture and PCB layout sites: Pad2Pad link and DesignWorks Express here. I've used the latter's DesignWorks package for some years.

But the two together lets one get a small PCB design, plus a manufacturing quote, in a jiffy. Board prices are, to this old guy who used to spend thousands on PCBs, really cheap. I use it for front panel layouts, PC Board outlines, sheet metal drawings, etc. Mark Misiewicz likes Sketchup: I have a suggestion for mechanical CAD package. About two years ago I discovered Google Sketchup. What a great piece of 3D modeling software! And it is FREE too. We use it for modeling and designing enclosures, front panels, fitting circuit boards, garage shelves, mechanical parts etc.

Chuck Petras had this: Here's a circuit simulation applet java running in a web browser window you may find helpful: Also he's got some other applets that look like fun: Evgeni Stavinov has some free web apps that will generate Verilog or VHDL code to create CRC generators, linear feedback shift registersand scramblers.

The results are published here. Polyspace is used to clean up our safety critical code, it works well. We perform Module Tests and project analysis.

From a reader who wishes to remain anonymous: In response to your question about static analysis tools, I'd just add that I've been using PolySpace for about 18 months now. We can run 'whole program' analysis in both C and Ada The tool uses Cygwin on Windows and this seems to slow things down.

But your question was really "does it work? Without this PolySpace must assume the worst, e. Possibly one of the most telling stats is that we find loads more bugs in the C code than the Ada code. I can think of 1 bug that PolySpace uncovered in Ada code in all that time. It arguable that we'd have been a lot cheaper to not bother with C or PolySpace and just write everything in Ada!! I had experience with PolySpace about 4 years ago. The system promised a lot but delivery was another story.

The code it was given was pretty bad: The code needed analysis and refactoring as it suffered from unexplained random hangs. The hope was that PolySpace would pinpoint the problems, we'd fix them, and this would buy us time to do a real refactoring and optimization. They gave us a PC on which we ran the analysis and it did not go well.

So, they offered to send our code to their Grenoble headquarters where they have a server farm - it was a matter of pride and they wanted to show that they are up to the task. Our code sample hung their servers. PolySpace rep was a nice and a diligent man and I worked with him and the tech support guy and in the end we decided that it was taking too much time.

I refactored the code, removed the globals, etc. The system got better and faster. And the code became readable. A year hence, we got a call - they ran our old code through their servers! The rep realized that it did not matter to us but wanted to show that they are getting better and maybe they should be considered after all.

My impression after all this is that it can be a useful tool but when the code is bad - high cyclomatic complexity, lots of variables in the scope, and complex interactions - it becomes too taxing for PolySpace.

It might be much better now, I hope it is: But when the major surgery is in order - do it and forget the analyzers. A reader who wishes to remain anonymous wrote: We are using PolySpace here with good end results. However, it is a beast to run reliably on Windows, and the results are often difficult to interpret. Also the analysis is very slow longer than the time between releases for usand incredibly the server product cannot be sped up by adding processors.

The tool is only able to verify subsections of code, not the whole system which is apparently too complex for PolySpace to handle. It does not cope well with autogenerated code. The key to success is automating the submission of code into the tool, and investing time implementing the many tweaks that PolySpace recommend to improve accuracy. Out of the box, the current version 3. After the tweaks and automation, it all becomes a lot easier to deal with, and it does find real and potential run time bugs!

All the obvious errors are found, and so far 2 months, 4 releases no errors that should have been found have crept through. Any bug is potentially catastrophic. So I guess they are worth the price if you have the money. We had a meeting with PolySpace a few months ago where they were showcasing their product.

The presenters were not very knowledgeable about the product. When it came to the actual licensing and pricing we could not understand why they needed a special server where they uploaded the code to and it performed the analysis.

We gave them some code and after some hassle they managed to start the analysis. They discovered one trivial bug. And we could not get it to analyse anything on our current Linux project. There were bugs in PolySpace itself which choked on the kernel include files. I would not say they are selling snake oil but their emphasis is convincing non IT savvy managers that this is the silver bullet. I would use Flexlintit takes some time to set up but when it's running it's fast. It also does multiple passes and code analysis.

Jeff Brentlinger is using the static analyzer from Klocwork: We are early in the use of Klocwork from hereso I did not reply to your 1st request for people using Static Code Analysis Tools I was hoping some of the other users would chime in.

One of the problems we have had is resisting the urge to use this new tool on the current project that is in trouble. Project X is late, so let's run this tool over the code Great now we have critical code issues on top of the bugs reported by the test group we won't even think about the 70, other issues the tool found. Having address that small part of the cultural issues, what about the tool itself? We have yet to have Klocwork flag an issue that was not at least poor coding if that code is executed there will be a problem, but is that path ever executed?

One advantage of this type of tool over lint or just turning on all the compiler warnings is that the results are public. Anyone on our network can log in to the system and see that Project X has Critical Code Issues, far better than the situation where the compiler warnings or lint report just stay on the build machine seen by no one. It's a good tool which uncovers all of the usual features and more besides.

The runtime analysis feature also provides code coverage figures which can be helpful! My reservations about it were that it had setup costs timealso code instrumentation degraded runtime performance expected and was resource hungry, which affects usability. What would have been useful was a runtime tool usage detection function in the tool's API, which is a feature Rational's Purify plus. Which is useful for determining which memory allocator to use. As far as lint goes, flexelint is lint on steroids.

With all of the above tools, the biggest pain is ensuring that that they are fully integrated into the software development process that's hopefully followed. Also their continued usage needs evaluation and review i. Matthew MacClary uses these checkers:. I am happy with these tools. I use gcc with lots of checking turned on all the time, the other tools I just use on hairy problems - though making them part of my standard flow would be great too.

I rely on coding best practices like reliable debouncing routines, ring buffers, and double buffers as appropriate to design this type of asynchronous code correctly from the start. Dave Kellogg sent this: Understand link is a powerful IDE plus Static Analyzer.

It can then show you textual and graphical tree views of calls to, called by, included by, read or write references to variables, dozens of metrics including McCabes Complexity, comment density, line counts, and couplingand much more. It has a scriptable API, multiple monitor support, and all the typical functionality of an IDE. It can generate flow charts from your code. It has an architecture feature for grouping a bunch of source files together as a unit, and then doing analysis on that unit.

I'm extremely impressed with the support offered by Sci Tools. If you write code, you need to check out this tool. If you maintain code written by others, then you MUST check out this tool.

But with its huge range of analysis features, it is a fantastic bargain. Vlad Zeylikman votes for Understandtoo: Other variants support more languages, including VHDL. It can generate code metrics, call and called trees, cross-references, etc.

The code navigation within a project is very easy. Search can be done on project files or outside. There are Windows, Linux, and Solaris versions.

For a large project on which you need to come up to speed quickly, it is an invaluable tool. Dave Kellogg also likes: PC-Lint get it here is the most capable lint available.

It supports dimensional analysis detects operations on variables with incompatible units and MISRA compliance checking. Ray Keefe is a fan, too: PC-Lint - This tool languished for a few years but has recently been brought fully up to speed and maintained again.

It is great for catching coding issues and classes of bugs that are common. Once again, an invaluable input into our code reviews. Amr Bekhit suggested an open source tool he recently released: It's called PC-Lint Wizard and can be found at here. It is a GUI tool designed to make it easy to setup and maintain Gimpel's PC-Lint for software projects.

Vinay Patil likes Splint: Here is another very good, and free tool called splint for checking C Syntax, Memory leak, Buffer overflow, Naming conventions checking even customizableetc. Ray Keefe recommended Resource Standard Metrics from these folks - This is a very versatile tool. We use it for coding standard conformance verification, code quality metrics, ensuring copyright notices are present in every file, general coding metrics and as one of the inputs to every code review we do.

I didn't see IDA on the list, if you're not an engineer but instead a reverse engineer. It's about the most useful tool out there. Grzegorz Mazurkiewicz suggests Kst https: It allows you to visualize your data on 2D plots. It has also some analysis capabilities histograms, power spectrum.

subversion branching strategy feature vs release

It supports many file formats, but I think the most useful is of course CSV or maybe the simplest to use. A very interesting feature of this tool is that it can show the data in real time. It means that it updates the plots when the new data is available in the input file. The simplest usage scenario for us, embedded developers, is to print the data using UART on a device side, transfer it to PC FTDI or similarsave to CSV file and use it in Kst.

I did it when I was working on a project where accelerometers and other sensors were used. All the data from the sensors plus some variables were visualized using this tool. Very useful as a debug method. Worth to mention is that this tool is really fast and handles lots of data without any lags.

Freemind link is a really great tool for brainstorming and quickly building up outlines of hierarchical information. It's a mind mapping tool, a concept I wasn't aware of until I found Freemind.

The best way to understand what it does is to look at the website. Another useful item for adding lightweight threads to an existing application is: Protothreads by Adam Dunkels: I have used it to easily add functionality in existing complex systems with high timing constraints. Thomas Pircher suggested pycrc. The used CRC variant can be chosen from a fast but space-consuming implementation to slower but smaller versions especially suitable for embedded applications.

Tupac Shakur - Wikipedia

Also useful if you need to look-up a particular set of CRC parameters is: If you're a UNIX person who has to use a Windows computer, all your favorite and familiar tools can be gotten by installing cygwin link. If you want to distribute apps under cygwin, the licensing fees are substantial.

Instead, get the MinGW compiler link and you can build native Windows apps and distribute them without any fees. Within boost are several very useful tools for writing test driven code. The most impressive thing in my mind is that one doesn't have to change the code in order to test it. Otherwise, you might experience the horror of removing the well placed debug print statements from 'tested code' to find the code then fails! It does not require an Advin programmer.

The DOS version can be scripted using batch files. This is not always directly useful in a deployed system, but it's great for changing large quantities of code in a dynamic manner or finding similar but not identical constructs buried deep in your source files note that this is not a search tool, but UltraEdit and a few other editors have regex search and JGsoft [RegexBuddy maker] sells one called PowerGREP.

I'm not going to attempt to describe all of its features; it suffices to say that if you spend a lot of time wandering around in the folders on your Windows machine, this tool may do just as well for your heartburn as Rolaids.

Rod Bartlett August sent this: Having once again been frustrated by how slow the Windows search utility is, I finally found a better file search tool for Windows. Its an open source project called AstroGrep. This one lets you search recursively for multiple file extensions and either display just the filenames which contain the specified text or the filenames and the lines within each which match.

If you choose to display matching lines, the matching text is highlighted. You can use regular expressions and limit matching files based on timestamps or sizes. The best part is its very fast. A great tool I use every day for organizing and structuring ideas, requirements database design and lots of other things is a free MindMapping tool called FreeMind from here and examples are here.

Another tool I often use for making release preparations, sending out. This tool is much more rich and useful - if you work with audio aspects. Audio Spectrum Analyzer link. This might come across as blatant self-advertisement, but I'm very proud of my first open source contribution Time Tracker: It is to aid timesheets without having to do much, the app will check the active window periodically and list time spent on each. Custom tasks can be added, and with the aid of rules, windows can be associated with these tasks.

Grant Sargent likes Unison: For keeping various files in sync home, work, removable drives etcI recommend the Unison file sync application link. Great if you don't need the revision control of subversion.

Available for Linux and Windows. Open Source, works as advertised. Ray Keefe suggested Duplo from here - A sourceforge project published under GNU GPL this finds duplicated blocks of code. The idea is to refactor common blocks of code to make projects more maintainable. You can select the number of consecutive identical lines required for a match. It strips comments before comparing and also ignores white space so it is looking at just the code. The weakness is that it treats variable names the same as it does keywords so if you name your loop variable differently then it will look different to Duplo.

But we still use it at the project review level to identify ways to make the software more modular and more maintainable for the long haul. He also suggested SciLab from this site - This is an open source project with a GPL like license. If you want a tool to do maths like Matlab but the license cost is prohibitive then this is one of your options.

It includes a LabView gateway. From Jason Hsu August Another open source alternative to MATLAB is Octavewhich has greater MATLAB compatibility. I recently used it for analyzing data for Project Phoenix IEEE study group working on an open source blood pressure monitor.

Since I live over 60 miles from the lab where we meet, using Octave has allowed me to work on the project from home. Although the group has a MATLAB license, I'd only be able to use it at our lab, as it would be prohibitively expensive to give everyone in the group a MATLAB license. Since Octave is open source, anyone can use it on any computer at any location. I have been using two tools from Trace Systems.

The first is the SUMS system which is an Ethernet bootloader on steroids. It is a complete firmware update management system for Microchip PIC based embedded systems. I can't imagine how anyone could duplicate the functionality for less than the price that Trace Systems sells it for!

inserted by FC2 system