All the world is a market.
Meet the needs of your customers and your move a lot of product.
Try to tell your customers ¡°what they need to do, ¡° and they may find another vendor.
Trick here is to figure out how to make it easy on multiple types of customers.
that might require you storing your files 2 different ways, but that¡¯s extra work for only ONE person, and benefits tens to hundreds to thousands.
On Apr 24, 2018, at 10:37, Jack Purdum via Groups.Io <
jjpurdum@...> wrote:
toggle quoted message
Show quoted text
Karl:
You're probably right on the 3 types. However, the statement:
You want to make changes to the software? Then you are a software developer, and version control is part of that.
needs a little wiggle room. If someone just wants to add a splash screen with their call, that's a change, but I don't think they need version control to do it. The problem is implementation: at what point do you transition from casual programmer to software
developer? I think there are a lot of "add-a-splash-screen" programmers who are sticking their toes into the programming ocean for the first time. I think that's great...it's a fun element of our hobby! Of course, the danger is that wigglie toes in an ocean
can attract attention from some mean-spirited creatures and some cautions need to then be put in place to safeguard the code. I just don't know where that line is drawn.
For me, when I'm finished working for the day, I always make a back a copy of the current files into a Backup directory. Using my earlier example, I would have:
?? C://IanLee/Version106/ubix_20.ino...
????????????? /Version1072/ubix_20.ino
????????????? /WorkingVersion/ubix_20/ubix_20.ino...
????????????? /Backup/WorkingVersion/ubix_20/ubitx_20.ino? // and the rest of the files
Notice how
Backup is really a mirror of the
WorkingVersion directory. As long as I back up at the end of each day, my worst case is I lose one day's work. I'm not as religious about this as I should be, which a real VC would enforce, but
it works for me now.
In the end, it's up to the user to decide what's needed. The true value of VC only comes
clearly into focus when something really bad happens and six months worth of work disappears.
Jack, W8TEE
On Tuesday, April 24, 2018, 8:59:11 AM EDT, Karl Heinz Kremer, K5KHK <
khk@...> wrote:
Jack,?
I think we are dealign with three types of users:
1) The "Give me a simple way to flash uBitx, and I don't care about version numbers, I don't care about changes, I just want to use?the latest and greatest features" user. For?them, a version number is not important,?because they very likely don't even want
to keep more than one version around. They would very likely be happy with just using avrdude and flashing a hex file, which Ian provides.?
2) The "I want to experiment with the software and make my own changes, but always want a save way to get back to a working configuration" type of user. For them, just like learning?the syntax of C/C++ and how the library system in the Arduino IDE works, it
may be a good idea to get a basic understanding of a version control system and use that to keep track of changes.?You want to make changes to the software? Then you are a software developer, and version control is part of that.?
3) The "I want to have access to different versions, but don't?want to learn how software development actually works" type. For them, your approach may be a good way to keep track of different versions. ?
Especially if you fall into #2, and you want to make changes, you need a way to figure out what you've changed. When you hack away on a keyboard, mistakes happen and you may not even remember touching a file. A version control system always will tell you exactly
what has changed, and then you can figure out how to get back to a working system. So, in m opinion if you?want to make changes, you either need to be very good with the Unix diff command, or have a VC system?that takes care of that for you.?
--
Karl Heinz - K5KHK