

Improving open source hardware: Visual diffs - sbierwagen
http://www.evilmadscientist.com/article.php/visdiff

======
bradfa
Why not just have the EDA tools understand (or have plugins that do) how
version control systems work and provide diff'ing abilities? The EDA tool
would have to provide the diff'ing ability but have API hooks for interfacing
with version control systems.

LabVIEW can do diffs and it integrates with version control systems. LabVIEW
is almost completely visual and it'll show you what changed between versions
if you ask.

~~~
jevinskie
Because EDA tools and their authors are stuck in a 1990s mentality. Usability
outside of improved autorouters has not significantly improved in many years.
I fear that the tool authors just don't "get" the development processes that
have emerged in the last 20 years.

~~~
bradfa
There's some other avenues that EDA tools also aren't taking that could be
great market opportunities for some of the small to mid-range players to
capitalize on.

Besides just modern version control systems, most big companies have internal
teams to manage schematic symbols and layout footprints for all parts they
use. There's outrageous duplication of effort going on. If there was a "cloud"
provider who could do this for you, it'd cost each company less and the
service could be better. There'd have to be customization and an API so each
company could customize their access and data stored, but that's easier than
actually selling this idea :)

------
j_m_f
The Upverter (YC W11) guys are working on a lot of these issues - their tool
aims to be a sort of github for electronics, with browser based EDA tools:

<http://upverter.com/>

~~~
theatrus2
Upverter is nice, but no board layout yet. It's not even quite a minimum
viable product for EDA

------
JonnieCache
If someone's looking for a really cool project to make a name for themselves,
this seems like a great candidate. I want to see a git GUI that has a fully
integrated diff viewer for EAGLE files, with tracking of electronic
subsystems/components as first-class entities.

Come on people, it's just PostScript! Get to it!

------
DanBC
Version control for schematics is cool.

I don't really get what they're saying with "visual diffs". Normal practice is
to have a side-bar with a list of differences between versions. That makes it
pretty clear what was added or removed. Using colours kind of fails because
(for just a two sided PCB) you have two copper sides, one (maybe two)
component sides, and these already use a bunch of different colour.

Whatever you do with "visual diffs" needs to work in monochrome - you have
people working with traditional blueprints, or with mono printers. Heck, you
still (in the 21st century!) have people using fax machines.

This all sounds really negative, but it isn't. It's a great idea, I just hope
they can make it work.

~~~
HeyLaughingBoy
I started out thinking that visual diffs for PCB artwork was a great idea, but
as I think it through, I don't see a whole lot of value.

Circuit board layout is not like code where you can reduce changes to diffs.
Often you want to look at the entire layout because the change may have a side
effect that you don't see from just the diff: e.g., re-routing a 120VAC input
line near the connector that your pH sensor connects to. The layout is all
that has changed, but that change can have an effect on something completely
unrelated.

Absolutely version control for schematics/artwork is a good idea: that's a
given. But I'm not sold on being able to visually diff the changes.

On an unrelated note: did that PCB layout shown make anyone else cringe? I
still shudder thinking about it.

------
snowwindwaves
I wish there was a visual diff tool for function block programming in PLCs. I
am moving more and more towards the "structured text" type PLC programming
just so I can get a sensible change history.

