Ugh. Rant time. - Page 1
Forum section: electronics / general

author: c4757p
author_rank: Super Contributor
timestamp: February 28, 2013, 03:41:50 am
content: Why is it that all these damn open source projects insist on making people navigate their stupid internal error management system to report a bug? I should not have to register for an account, sift through a million categories, spend twenty minutes screwing with the search engine trying to find similar bugs, and collect debug files from the program, just to tell them about an obvious, critical parser error (easily reproducible, at that) that should not exist in the first place. If I managed a software project and someone sent me a description of an error like that to my fucking personal inbox titled "FIX IT, BITCH" I'd be grateful to get the information.

author: Bored@Work
author_rank: Super Contributor
timestamp: February 28, 2013, 06:01:00 am
content: They copied that idea from professional, commercial software. Where you typically have a hard time to find anyone who wants to hear about a bug. And if you find one they ask you to pay a premium before they stuff your bug report into some obscure system, never to be read again.

author: c4757p
author_rank: Super Contributor
timestamp: February 28, 2013, 06:26:48 am
content: An important difference is that many OSS projects like to pull the "stop whining, it's free" card. They they turn around and act like the software should be treated like a real, professional project. Can't have it both ways. If you're going to act like it is anything more than a cool toy, I shouldn't have to go crawling through the innards of your bug tracker because your program decided it doesn't want to open a file it saved thirty seconds ago.

author: psycho0815
author_rank: Regular Contributor
timestamp: February 28, 2013, 08:10:02 am
content: Well, stop whining, it's free!Seriously though. As a professional software developer, i suppose i can see where they are coming from. Depending on how many bugs are reported every day/week, having them just emailed to you, simply doesn't work. You need some sort of issue-tracking. Off course, ideally all it's complexity would be hidden from the customer.I think the main problem here is that most oss is written by selfmanaged developers. It simply doesn't occur to them, that some people just want to use their shit instead of constantly fiddle with it.just my 2cnts

author: firewalker
author_rank: Super Contributor
timestamp: February 28, 2013, 08:40:26 am
content: The bigger problem is bug reports that doesn't help. Bug report from users that don't know what they are doing is in many cases a witch hunt for the developer. The user how is willing to go the process of signing up, searching for similar bugs etc,i s most likely to report a valid bug report that will lead to something fixed."The stupid thing doesn't work, please fix it" != a bug report.Alexander.

author: psycho0815
author_rank: Regular Contributor
timestamp: February 28, 2013, 08:57:47 am
content: Quote from: firewalker on February 28, 2013, 08:40:26 am"Could you please tell me what exactly isn't working sir?" - "Everything""Ok, can you talk me through what you did?" - "Nothing"Been there, done that.Most Bugs, can be easily fixed by replacing the user.So i guess you have a point. But that way some bugs can survive many updates only because it's not bad enough to go to the trouble of reporting it.And for some users "not bad enough" is actually pretty bad.Suppose you gotta find a balance somewhere

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: February 28, 2013, 11:57:56 am
content: Are you going to name the project?

author: Tepe
author_rank: Frequent Contributor
timestamp: February 28, 2013, 12:40:49 pm
content: Quote from: hammy on February 28, 2013, 09:08:17 amHow much was it you paid for support?

author: Tepe
author_rank: Frequent Contributor
timestamp: February 28, 2013, 03:38:02 pm
content: Quote from: hammy on February 28, 2013, 12:51:53 pmThat's because it is basically the only reasonable response to give to somebody who demands something for nothing.Quote from: hammy on February 28, 2013, 12:51:53 pmAfter three decades in the software field, I am more or less immune to such complaintsInsisting on making the job more difficult for people who let you use their product without compensation is hardly going to benefit anybody.

author: mgronber
author_rank: Contributor
timestamp: February 28, 2013, 03:47:23 pm
content: Quote from: hammy on February 28, 2013, 12:51:53 pmYou have to admit that it is quite powerful card and usually its use is justified. Most of the OSS developers make software on their own time and for free. The time that is spent to gratuitous user support is taken from the software development.You can always hire someone to accept bug reports in your favorite format and to fix the bugs that you want to get fixed. These are benefits of the open source software. So stop whining and pay if free is not good enough for you.

author: c4757p
author_rank: Super Contributor
timestamp: February 28, 2013, 04:05:09 pm
content: Quote from: HackedFridgeMagnet on February 28, 2013, 11:57:56 amKiCad. (Despite the ranting - I was a bit scared that I lost hours and hours of work to the bug, so I wasnotpleased.... - I really do like it a lot.) It randomly decided to no longer accept a + at the beginning of a net name, and started spitting out obtuse syntax errors on my old files. (The fix is extremely easy, too - if you put quotes around the name manually in the file, it works fine again. They just need to properly escape the names before writing them out. Frankly, having a good bit of programming experience in a past life, I want to know what hack of a programmer would ever write out to a plain text file without escaping the text! That sort of thing is what leads to buffer exploits, privilege escalation and the like.)Quote from: mgronber on February 28, 2013, 03:47:23 pmIf projects didn't expect to be treated like professional alternatives it would be a perfectly valid card to play.Actually, I rather think they ought to offer the program both free and paid, where the paid version comes with additional support beyond what they have now. (At the very least someone to handle bug reports like that.) I'd actually be quite happy to pay for KiCad. I don't just use it because it's free, I actually dolikeit. They put in a lot of work and deserve some sort of compensation. And I'd love to be able to suggest fixes without having to tame the bug tracker first...Edit: Holy crap I use parentheses a lot...

author: c4757p
author_rank: Super Contributor
timestamp: February 28, 2013, 04:48:00 pm
content: Okay, despite reporting the bug being a pain in the ass, I have to commend them - I reported it last night and a fix was committed this morning.

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: February 28, 2013, 10:47:45 pm
content: QuoteThat's pretty good. The wonders of a small team without management interference.I use Kicad too, but haven't reported a bug, or haven't gotten around to compiling it either.Was it a nightly build or a supposedly stable release?On the other hand I have just be using Altium Reader, (no one I know will pay for my full licence), it's not without it's bugs and UI weirdness either.

author: rsjsouza
author_rank: Super Contributor
timestamp: February 28, 2013, 10:51:18 pm
content: My US$0.02...I work for a company that develops an IDE, and I can tell from my own experience: either with Open Source or proprietary software, a thorough report with a reproducible way to make the bug manifest itself goes a long way to quickly solve any issue. In the case of my company, this is valid for all customers regardless of their size.Since the complexity of these software tools increased (with several internal components), the bug reporting system follows suit (developer "A" only sees bugs filed against component "A", and so on) - in several cases it turns out that very few people actually have complete visibility of ALL the bugs submitted.Since everybody is usually pressed by time and resources (including the software manufacturer), the customers and the developers naturally end up filtering nuisances and only reporting critical stuff. Of course, there are always the "low hanging fruits" that have an easy way to reproduce and a quick fix.On the other end, the number of reports that say "don't work, it is a bug" are massive, and the software manufacturer can't really do anything without details. That is why some of the bugs linger for several versions.Other bugs are simply too hard to pinpoint the exact reason, or are heavily dependent on the customer's OS, third-party software (antiviruses are famous for interfering with no-mainstream software) and sometimes even the PC's hardware (mostly USB if using emulators).

author: c4757p
author_rank: Super Contributor
timestamp: March 01, 2013, 03:49:36 am
content: Quote from: HackedFridgeMagnet on February 28, 2013, 10:47:45 pmSeems like all of the schematic/PCB packages are steaming turds. Some just don't smell as bad as the others...Quote from: Mechatrommer on March 01, 2013, 03:39:52 amBecause you care about support and they don't, and the programmers choose to make it available to them. It's that simple. To them I say "shut up!"Quote from: rsjsouza on February 28, 2013, 10:51:18 pmI know, many error reports are useless and requiring them to be properly detailed helps filter those out. Some bugs are really hard to track down. I just wish there were a way to tell people about easy bugs like "file-save should put quotes around names". I guess it might not really be possible to filter out the crap, though

author: rsjsouza
author_rank: Super Contributor
timestamp: March 01, 2013, 04:32:57 am
content: Quote from: c4757p on March 01, 2013, 03:49:36 amI feel your pain... In my case there is no easy way: customers don't file bugs. We file all of them, but only after the customers provide full details and we reproduce them in our own systems. This helps to filter out all the crazy stuff and quickly fix the low hanging fruits ("put the damn quotes on filenames" type of bug), but at the expense of man hours - something harder to materialize in the open source community (not everywhere, though, as you can attest by the quick fix to your report).

author: c4757p
author_rank: Super Contributor
timestamp: March 01, 2013, 04:44:52 am
content: I must confess that most of my rantiness (yeah, it's a word - suck on it, spell check) was a product of my "holy shit all my work is gone" fear - which was entirely my fault for doing real work on a nightly. I stand by my desire for better error reporting, though I realize it's not as simple as "just fucking fix the error reporting systemnow, goddammit"...I also stand by my "what god-awful programmer would eventhinkabout writing raw string values out to a file without escaping them first??". And I'm a bit peeved that the solution they implemented was not to fix the saving of the values, but to accept raw values containing numbers - especially considering whatever input parser they're using already seems to understand quotation marks. God only knows what else it will let you type into a net name that it won't be able to read back. I suppose instead of just submitting an error report I should have submitted a patch - I am more than capable.

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: March 01, 2013, 11:25:13 am
content: QuoteHaving done plenty of "escaping" myself, I have to agree with you here. Any data written to text file needs to have escaping done on it otherwise it's just a random string and not organised data. As such all such data exported should go out through the same WriteDataToFile function that the developers had got right in version 1.I know most people hate XML but at least developers remember it needs to be escaped.Don't worry about the rant everyone has them and I myself find them quite therapeutic.

author: rsjsouza
author_rank: Super Contributor
timestamp: March 01, 2013, 01:23:46 pm
content: Quote from: Mechatrommer on March 01, 2013, 07:22:53 amAll the open source projects started this way but, as you mentioned, the successful ones required a significant amount of time (years, not months or days) from the original developers until they reach a critical mass of knowledgeable people. By then the "community" is doing a significant amount of development and bug fixes (at the same time the "stop whining card" starts to develop), but it still requires some management that approves patches and new features; something simlar to what happens to Wikipedia. Without this management, the project becomes a headless chicken and therefore impractical.Quote from: Mechatrommer on March 01, 2013, 07:22:53 amHehehe... Not only it is impossible to satisfy ALL users' needs but also to fix ALL the bugs...Despite all this, nowadays several large Open Source projects (Linux, GCC, etc.) have professionals working on them, or companies that sponsor certain porting efforts or sponsor the project during a given amount of time.Quote from: c4757p on March 01, 2013, 04:44:52 amLove it! Rant on an inflection of the word rant... This makessqr(Rant);or Rant²Quote from: c4757p on March 01, 2013, 04:44:52 amI agree with you... It looks like a half-baked solution for the problem.

author: psycho0815
author_rank: Regular Contributor
timestamp: March 01, 2013, 01:38:57 pm
content: Quote from: c4757p on March 01, 2013, 04:44:52 amAgreed, that seems a bit quick'n'dirty. Problem is if you fix the saving of the values, it still won't load the files that have already been saved with the faulty quotation. You'd have to write some sort of converter, that loads the file, identifies the places with missing escaping and fixes them, without breaking the actual layout obviously. Or provide some kind of fallback-mode that accepts raw input if normal loading doesn't work. Not sure how much effort that would be, i never looked at the codebase. (Also C/C++ is not normally my language of choice).So i can see why they choose to do it that way for now. Hopefully they'll do a proper fix in a later version.

author: c4757p
author_rank: Super Contributor
timestamp: March 01, 2013, 02:21:18 pm
content: Quote from: psycho0815 on March 01, 2013, 01:38:57 pmI think what I'd like to see is a better "unstable" line in addition to stable and nightly. I'm using nightly because it has some cool new features, which actually do work. The file save problem is due to them being in the middle of a file format switch. What I'd like is a code branch that gets all the new features pushed to it as soon as they work, but doesn't contain the half-finished ones like the new format. They only need to worry about backwards compatibility to the last stable release, which it doesn't have a problem with. I wouldn't expect backwards compatibility to be maintained across two nightlies.

author: free_electron
author_rank: Super Contributor
timestamp: March 01, 2013, 08:24:33 pm
content: Quote from: c4757p on March 01, 2013, 03:49:36 amthat is programmer stupidity.it's a matter of writing robust i/o code. there are ton's of libraries that already do that crap for you. filter out illegal characters, deal with long file names , split parameter strings etc. USE THEM !ANY kind of input , wheter coming form a text field, file or i/o interface needs to be 'sanitized'.in case of filenames : if you detect a space in the string : remove any existing quote marks and re-wrap in quote marks. scan for illegal characters ( so people can't force os commands through the file filter. etc etc

author: codeboy2k
author_rank: Super Contributor
timestamp: March 03, 2013, 07:00:11 am
content: Quote from: free_electron on March 01, 2013, 08:24:33 pmagreed. The problem with today's kids is that they are re-learning all the same old mistakes over and over again.Anyone who grew up on Usenet has seen all the robustness of the software that defined the "Internet" back then.We've seen all the exploits fixed, all the good programming practices adhered to, and we all learned what not to do when writing code.Today, it's Ajax/JSON/HTML/SQL/PHP, etc and all these technologies are being re-exploited because the new kids are writing the same old bad code, and creating the same old problems we already fixed once. They write code, but they aren't thinking.Now, none of what I just said has anything to do with reading data from a file. But as FE said, it's the most basic of all things. Sanitize the input stream, especially if it is an original source that might have been modified by an end user, as Kicad's text files are.Kicad itself doesn't even follow any of the most basic usability and workflow paradigms that came before it, as most every other capture and PCB program does. It's just a beast to work with.(yeah I know, quit whining, it's free)

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: March 03, 2013, 08:12:16 am
content: QuoteThat is so not true, I found it easier to use than Eagle. Also I got a non engineer guy to layout his first ever board using it, 2 layer, just dip profile and maybe 40-50 components.And he did it reasonably quickly with only a couple of queries, I had to help him with the DRC errors and track widths.He followed the tutorials and he was a programmer by trade.I have more trouble with Adobe Reader usability than I do with Kicad.

author: Bored@Work
author_rank: Super Contributor
timestamp: March 03, 2013, 09:07:16 am
content: Quote from: codeboy2k on March 03, 2013, 07:00:11 amThat, and they aren't listening. The kids invent one rubbish programming language (python, php, JavaScript ...) after the other, "invent" one rubbish technology after the other (Ajax, Flash, ...), and redo every single mistake of the past. They don't even invent their own mistakes, they just do the old mistakes over and over again.When you tell them they don't listen.There is an example in some other thread. Someone is asking if version control is really needed. 30 years after it is an established proven technology. I have given up trying to educate such idiots. These days I am fortunately in a position that I can refuse to work with people who don't do version control. I have fired subcontractors on the spot who refused to do it, or refuse to do it properly (no, a bulk check-in, of course without merging, every second week is not proper ...). They don't listen, so there the job goes.

author: jancumps
author_rank: Unknown
timestamp: March 03, 2013, 09:30:34 am
content: The grandaddies learned to avoid the obvious mistakes by making them first. The kiddies are doing the same.Power to them. Amazing what they achieve with these open source projects.

author: Anquietas
author_rank: Regular Contributor
timestamp: March 07, 2013, 10:54:47 am
content: Quote from: Bored@Work on March 03, 2013, 09:07:16 amI would like to hear or be linked to criticism on Python that you second.

author: carloscuev
author_rank: Regular Contributor
timestamp: March 07, 2013, 07:54:25 pm
content: Quote from: c4757p on February 28, 2013, 04:48:00 pmI've reported 3 bugs just by describing the steps to reproduce in their launchpad system (https://launchpad.net/kicad) and attached a screenshot showing the bug. In those 3 cases a fix was commited the next morning, just like you did. I don't think its too much trouble and the response time is just awesome.

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: March 07, 2013, 10:08:53 pm
content: 3 bugs verified and fixed the next day, that's amazing. I guess they must have been simple bugs.

author: Stonent
author_rank: Super Contributor
timestamp: June 11, 2013, 05:28:26 pm
content: How about a "I see you connected something to VCC but there's no power, perhaps you forgot your power flag?"That took a while for me to figure out, I thought I just hadn't learned the correct technique to make it think you connected something to the pin.

author: c4757p
author_rank: Super Contributor
timestamp: June 11, 2013, 05:35:51 pm
content: That's simple if you understand how the ERC system works in KiCad. (RTFM!) A pin of type "power input" must be powered by a pin of type "power output" to pass ERC, so you must have a power output somewhere on the net. The power ports cannot be implicitly "power output" because two outputs on the same net is a collision, so you must mark the provision of power somewhere. Also, if they were, then ERC would not be able to detect when you forget to power the power rail.I do think the power flags are ugly, but part of that is the fact that their whole standard library is ugly. I use a much smaller one that doesn't clutter up the schematic.

author: nctnico
author_rank: Super Contributor
timestamp: July 01, 2013, 12:11:02 pm
content: Quote from: psycho0815 on February 28, 2013, 08:10:02 amYou must not think that that is the problem. IT IS the problem. Even the Linux kernel developers don't see that. Its very hard to support Linux software. In fact I write most of 'my' Windows software on Linux so for most of my software there is a Linux version but I'm not going to release that because the support effort is simply too big.

author: AlfBaz
author_rank: Super Contributor
timestamp: July 01, 2013, 02:58:52 pm
content: Quote from: c4757p on February 28, 2013, 04:48:00 pmWhinge and win... I do believe that's another australianism

author: c4757p
author_rank: Super Contributor
timestamp: July 01, 2013, 03:07:43 pm
content: Quote from: nctnico on July 01, 2013, 12:11:02 pmIs it OSS? Tar up the executable directory as a little "extra". It's still considered a somewhat reasonable way to install software on Linux to just extract that to a subdirectory in /opt. Anyone who wants to do it more "properly" can figure it out from your source and the structure of the tarball. Not really a true 'release', but it's a lot better than nothing for those who want it and are willing to go to the trouble.

author: nctnico
author_rank: Super Contributor
timestamp: July 01, 2013, 05:00:55 pm
content: Its not OSS. There are ways around it by distributing all the libraries (other than the bare system libraries) together with the program and tell the linker to have the executable look into the local subdirectory first (like Windows does with DLLs by default). Firefox and other commercial packages distribute their Linux software this way. It kinda undoes the whole 'advantage' of using dynamically linked libraries but those have become a pipe dream on every platform rather quickly.

author: Sigmoid
author_rank: Frequent Contributor
timestamp: August 31, 2013, 10:35:32 pm
content: It seems people are misunderstanding OSS. OSS is NOT a product, and you are NOT a customer.You are part of a community that develops the software. Yes, even if you're just using the thing, you're not a "user", and most definitely not a "customer", you are a community member. You are more than welcome to get the code and fix the bug yourself. But if you cannot or do not want to, your share of the work is to create a detailed bug report.Note how you are not entitled to a perfect (or a working) piece of software. Nobody ever signed an SLA for you, and you didn't pay anyone for anything. The dev community aren't developing the software for you, or any abstract "user". They are doing it for themselves. When writing a proper bug report, you aren't doing it for anyone else but yourself - doing your part of making the software better for yourself that you are using.

author: c4757p
author_rank: Super Contributor
timestamp: August 31, 2013, 11:04:46 pm
content: I don't know who you're aiming at,Iunderstand this just fine. Doesn't mean I can't criticize it, though. It's not a good way to do software, at least, in my opinion.I am well aware that I'm not "entitled to" a perfect piece of software. If I thought I were, I'd be taking it up with the KiCad developers right now. There are a few features I'm praying for at the moment.... and the last time it crashed my system I nearly threw my computer out the window.... But if they want to insist that I'm stuck with whatever bugs I won't fix myself, then yes, I'm going to bitch about it.OSSshouldbe a product, and its usersshouldbe customers. There can still be a "community", but don't treat me like a developer.

author: free_electron
author_rank: Super Contributor
timestamp: September 01, 2013, 12:24:36 am
content: Quote from: Sigmoid on August 31, 2013, 10:35:32 pmWell that certain clears thing up. What you are saying is that they are writing code for the sake of writing code and don't give a rats ass if it is usable, stable or bug free , let alone if someone actually wants to use it.Well that sums it up niceley then. I had come to that conclusion long ago and decided to stay far away from it as it cannot improve my productivity.

author: HackedFridgeMagnet
author_rank: Super Contributor
timestamp: September 01, 2013, 06:58:46 am
content: QuoteQuoteI would say most users of OSS are in fact just 'Users' and there is not need to introduce community or corporate speak into it.I am very grateful to the people who have made Kicad and all the other extremely worthwhile open source software.If anyone thinks that Linux, Apache, Firefox, Libre Office, Paint.net, Kicad etc are not worthwhile then they have their eyes closed.I don't think I have submitted crash reports myself(apart from automatic), to any of these 'communities' and so I don't really feel like I am part of a community.I haven't ever had any of these OSS projects crash my windows box as far as I can remember, although many non OSS games have done this. Obviously most windows crashes would come from the graphics or networking subsystems, so it is hardly a fair comparison, but it is the only one I can make as games are the only bits of software I would bother buying. (edit: + Windows and anti virus too + Visual Studio ).I would have to say it is, it is pretty hard to complain about what you are getting for free. Maybe you can try one of the obviously bug free commercial products and see if they are better. (edit: sarcasm warning)