fritzing / fritzing-app

Fritzing desktop application
http://fritzing.org
Other
3.93k stars 820 forks source link

Further development of Fritzing, open for discussion #3435

Closed PatrickFranken closed 5 years ago

PatrickFranken commented 5 years ago

At FOSDEM 2019 I gave a short talk on the challenges of the Fritzing development. For everyone who wasn't live, here is a link to the recording. https://video.fosdem.org/2019/AW1.125/fritzing.mp4

More details to follow.

falkorichter commented 5 years ago

đź‘Ť

vanepp commented 5 years ago

First off, good to see someone else interested in keeping Fritzing alive. As you should see from issue 3418 there has been talk but essentially no action about restarting development. I agree there is little point to a fork, in my opinion a fork isn't going to help, what is needed is people willing to help and they appear to be in short supply. I have been trying to restart development for more than a year now with little success. Currently (reference issue 3422 which I opened in September) Fritzing part update on Windows is broken. That is due to bit rot as was referred to in your talk. I have a fix: update the libgit2 lilbrary to a later version that supports tls1.2 on Windows (the version used only supports tls1.1 which github no longer supports). Sounds easy, just compile and go. However not so, as the development environment (which is poorly documented, which I am trying to change by documenting what I am doing to get an environment running.) As far as I can see no one else has a working development environment any more for Fritzing or this issue would have been fixed, as a simple (or as I have found, not so simple) rebuild with a later version of libgit2 will fix the problem. I am currently working on fixing that, but there is a way to go. At present the latest version of Qt asserts and crashes Fritzing due to tspans in some parts in the parts repository. I am just about to file a pull request to fix the 8 parts involved (just finished testing last night). Unfortunately Qt appears to have back ported the assert to Qt5.6 (which Fritzing 0.9.3b was compiled with) so just rebuilding with the previous version and a new libgit2 also doesn't work. In addition as of last summer (I haven't checked lately) the open source Qt version for Win32 wouldn't install (and hadn't for several months) so creating a 32 bit version may require a cross compile environment which I at present don't know how to do (I have no previous experience with Qt). This issue only (as far as I know anyway) affects Windows, Linux (and probably the Mac which is Unix as well) used tls1.2 from the start and still work fine. The largest segment of the user base however is likely Windows and they are also likely unaware that parts update is broken as no error message comes up, it fails silently. That hasn't been all that important because there also haven't been any parts updates since last June (I suspect largely because new parts are being submitted mostly in the fritzing forum rather than as pull requests here which is the only way part update happens any more). Once (or more correctly given progress so far if) I get the windows bug fixed, then comes the issue of finding or buying a Mac to build and test new releases for the Mac on. At worst I could buy a Mac and it may well come to that. Then we will see if we can convince anyone to commit to a new release. I think there is still interest from some of the original developers in seeing Fritzing continue, but their time is limited. What is mostly needed as indicated in your talk is people capable of development with the time and interest to do it. I have the time (I am retired, and my time is my own) and the interest but perhaps not the skill, but I so far seem to be the only one. I will post a link to this discussion in the Fritzing forum developer section, as there may be some people there that are interested as well (I normally don't pay that much attention to this forum for instance). In addition some history (although it was before my time with Fritzing): Fritzing originally started out as a funded research project which meant the development team was full time committed to funded development. When the funding ran out it became an open source project with the two entities you mentioned. I have heard that the funding goal to continue development is 40K euros and the pot is currently around 6K euros. I suspect that the developers have gone on to other things by now and even if the money should appear (which seems unlikely) development is unlikely to be able to restart. That means it is up to us if we want to see Fritzing continue.

Peter

ILYB commented 5 years ago

I am one who has benefited from using Fritzing as a novice in the world of PCB design and manufacturing. I applaud the effort to keep Fritzing alive so that others may benefit from it's unique interface and functionality. I wish there was something I could do to contribute to its ongoing availability.

I'm not clear if using Fritzing Fab helps to accomplish this goal or if the royalties are being directed to some other entity and therefore not helping to pay the bill so to speak.

el-j commented 5 years ago

thanks @PatrickFranken for this talk! so, from my point of view we need a change to a new way of writing fritzing. the build environment is to complicated as well as coding in c. i think we should build a fritzing-js webservice that is independent and running on open-providers. we can do this with very low cost. i just finish my thesis about fritzing and the future, i even have ideas for a new view...

so: there are already steps to bring fritzing to js. a few days ago i started the freetzing organisation here on github. together with @karpawich @paulvollmer
i think splitting form this old software, the bugs and the fritzing name will help the project to grow in future.

cheers + thanks fabian

ps: anyone who wants, please like this, i will invite you

HaraldRau commented 5 years ago

I use fritzing in school to teaching children. The Calliope Mini is currently being introduced in many schools. It is a micro controller with a CORTEX M0 prozessor. I have tried to integrate the component in the library. I succeeded with medium success. We look forward to the future development of Fritzing and hope for success. I offer training for Calliope Mini and Fritzing for teachers in Brandenburg. This is the only thing that I can do. I also asked the University of Potsdam for an opinion. I did not get an answer. This is verry pity

Excuse my bad English, Harald!

vanepp commented 5 years ago

@HaraldRau : If you would like some help with your Calliope Mini Fritzing part please feel free to post it on the fritzing forums and I will give you a hand with it.

@el-j : Sorry, but I'm poor at github, how do I "like this" (i.e like t this post or more probably the freetzing post, and how do I "like")? I'm interested but utterly ignorant of java script , and thus most likely to be of help with fixing up the parts repository.

Peter

el-j commented 5 years ago

@vanepp ah sorry for this confusion... all these different ways platforms work, i totally understand you...first i wanted to get a pm ... but this is not possible on github anymore ;) anyway: if you look there is a little smiley on the top right corner of every post. ;) image

el-j commented 5 years ago

@HaraldRau i made an issue for the part in the fritzing-parts repo, if you need any help ... https://github.com/fritzing/fritzing-parts/issues/171

for later purposes: i thought of making the parts an own organisation too. so every parts is a repository, and we could maintain every part individualy and keep track of the inventions or development of the part - what do you think about that idea?

WimberleyTech commented 5 years ago

Thanks Patrick, for the presentation. It was very informative. Thanks Peter for all you do on the Fritzing forum. I have never asked for help but I often see you helping others with parts issues primarily. You are a saint. I am a professional--retired (40+ years in the semiconductor business), but I use Fritzing for my hobbies and have used Aisler for fab four or five times (excellent!). I have also used Fritzing to mentor young budding engineers! I think it is a wonderful tool and it needs a new life or maybe just a shot of adrenaline. I am not a programmer (not at this level anyway) so I cannot help in that regard, but I would like to help in some way. The bucket of money that was once allocated to developers (goal never reached) seems amazingly small to me. Could progress really be made with such a small investment?? The legal issues seem a little daunting. Patrick loves the name, but if progress could be made by severing the Fritzing link, then so be it. In terms of funding...if the entity/legal aspects could be resolved so that when money comes in, it is used for the "real" effort, then I bet you would be able to get investors...I would invest. Thanks again for getting this discussion started!!

vanepp commented 5 years ago

@el-j wrote: "for later purposes: i thought of making the parts an own organisation too. so every parts is a repository, and we could maintain every part individualy and keep track of the inventions or development of the part - what do you think about that idea?"

I'm not clear how this would work, if every part is its own repository how do the projects (current Fritizing and the new one) find the parts? This has the potential to break the current fritzing or at least freeze its parts inventory which is depending on the parts being in a single repository (at least I think that is the case). I expect lots of people are going to still use the current Fritzing at least until something totally breaks it (such as a fatal api incompatability due to OS changes such as libgit2 on Windows currently). If something can be worked out where individuals own repositories so you don't have the entire burden of maintaining the parts repo that would of course be good. It could also allow (probably via the release or tag mechanisms here although I can't say I really understand either of them) maintaining older versions of parts for old sketches which would be useful I expect.

Peter

PatrickFranken commented 5 years ago

Dear all, sorry for the radio silence! I totally agree on the technical debt explained by @vanepp et. al., this is something I'd love to work on, too. But first there has to be someone who really kicks ass and gives a straight development roadmap. There is no doubt that we've some great developers around here but the effort has to be focused otherwise it'll just go down the drain. From my own experience I can tell that just organizing requirements, issues, pull requests, feature requests, media requests, public relations and such is a full time job by it's own. Because of this such a person should have some basic development knowledge but should not code on her or his own. If someone knows someone shout out @el-j @falkorichter @WimberleyTech @HaraldRau As said during the talk AISLER shares this vision why they would give part of Fritzing Fab earnings to fund a maintainer. That should be enough to pay at least a part time person.

Patrick

vanepp commented 5 years ago

My sense of the problem (which may well be wrong, since I am just someone interested in Fritzing) is that there isn't agreement from whoever controls the Fritzing brand on a way forward. What I would like to see is the Javascript project proceed as part of Fritzing rather than in a seperate project. I gather (again perhaps incorrectly) there isn't agreement from who ever controls Fritzing to do that. I have a short term roadmap of what needs to happen to support the current version: first a part repository fix to remove tspans from some parts, which I made a pull request for yesterday (that has taken me the last couple of months to arrange), to avoid Qt asserting and crashing Fritzing. Following that configure a working development environment for all platforms (Linux is easy, Windows and apparently the Mac less so) then document that so other people can do it (assuming we can find anyone interested, which hasn't happened so far). Then compile for both Windows 64 and 32 a copy of the 0.9.3b release with a new copy of libgit2 to fix the current bug that automatic parts updating is silently failing. Once that is done, then we will see if a new release for at least Windows of either head or (more likely due to lack of testing on head) the stable 0.9.3b code can be done. I can't do it, I don't have access (nor probably the necessary skills). Another short term goal is to arrange for a development release download on the web site (which of course presupposes a working dev environment) so we could publish a version of the current head for people to test to find out if it is stable enough to release. I think at present there aren't enough changes in head to make a release worthwhile, but there is currently a chicken and egg problem because of no way to get a development release to users for testing. As a data point, in the Fritzing forums over the last couple of days a Mac developer with experience in Qt tried to get a development environment going. He was unsuccessful and I believe has currently given up. This is a major problem, as even when we have someone interested in maybe helping they are unable to do so. Better documentation may help we will have to see.

Peter

karpawich commented 5 years ago

@PatrickFranken

Introduction

First off, that talk was great. I am from America, so I never understood the context behind why Fritzing development died. Now I do!

Second, in both your talk and your comments here, you emphasize the need for a clear direction, or a "straight development roadmap", as you called it. As @el-j mentioned, there are a few of us in the Fritzing community who have a direction like that in mind. Right now, that includes @el-j, @paulvollmer , and me.


A new direction

1. Fresh start

I'm glad to see from your talk that I am not alone in my shock at the over 1100 open Issues on the fritzing-app repository. Instead of bothering with a fork, we created Freetzing as the home for the future of Fritzing-related work.

2. JavaScript

According to the Stack Overflow Developer Survey 2018 and Github's State of The Octoverse 2017, it is no surprise that the most popular programming language today in the open source community is Javascript. As a member of this community, I can tell you that another key reason why Fritzing development has slowed is because of the entry-level knowledge base required by C++ and Qt.

TL; DR Any future iteration of Fritzing almost has to be written in Javascript if it has a chance of sustained maintenance.

3. Modularity

In addition to the barriers imposed by C++, navigating your way through the Fritzing source code and documentation is no walk in the park. The cause of this issue lies in Fritzing's monolithic architecture. While the developers did attempt to segment their code according to the MVC (Model-View-Controller) model, the magnitude of the application still prevents new developers from understanding how Fritzing works to start fixing it.

TL; DR Any future iteration of Fritzing must therefore be broken down into separate and distinct modules that can be maintained by smaller groups of developers.

4. Immediate next steps

Right now, we are already beginning our mission to keep Fritzing alive. That starts with fritzing-js, a Javascript library and npm module that will act as the bridge between Freetzing and Fritzing through importing Fritzing data files into the Javascript environment. From there, we plan to develop a new data model that will help simplify current Sketch and Part data so that we can lower the entry level for new developers interested in working with us on the project. We have the rest generally planned out, too - this is a just a taste of whats to come for the future. If you're interested in talking more, you can reach me at my email..

max.karpawich@gmail.com

The same goes for anyone else interested in keeping Fritzing alive. You can find our current work over at Freetzing.

karpawich commented 5 years ago

@vanepp I have been working on the JavaScript port for a few months now, and from my experience, attempting to stay inside the Fritzing organization just won't work in the short-term. I have no issue with eventually migrating back over to Fritzing, but for right now I think that there is no harm in working under a different name while a new version is still under development. See my comment above for more details about the Freetzing project.

vanepp commented 5 years ago

Fair enough, I will admit the current state of things is pretty non functional, but I'm concerned about fragmenting the user base even further. The forums being dead to new users for close to 6 months due to capacha problems has already driven forum usage down a fair bit, it is slowly picking up again after that got fixed. I think a large part of the user base doesn't use the foruns. anyway. I did download the early versions of the javascript code but couldn't even figure out how to install it and never did figure out how to run it (possibly because it wasn't installed correctly). I'm old, I know C and C++ the modern stuff not so much. I've currently done something so github won't let me (or I have forgotten how I did the first couple, I remember doing something somewhat odd, but not exactly what) make pull requests against the parts repo.

Edit: I should have added that I worked in a university data center for 20+ years before retirement so I can make a good guess about where the problem lies ...

Peter

karpawich commented 5 years ago

@vanepp Which parts repo are you speaking of? I might be able to help.

KingDarBoja commented 5 years ago

@vanepp Glad to see some familiar face around this discussion. So basically there is some folks that want the project to stay alive as I did way back at 2018 (Yeah, been a long time). I am glad that Javascript can be used as the base language for this new fork(?) so Fritzing idea can be available to any developer.

I have nothing against C++ but the fact that Fritzing requires Qt to be built is already a pain for most of us. If there is anything I can do, I am willing to help with the cause, my only downside is related to my current Job as Front End Dev using Angular 2+ (I am not an expert at JS but more like at TS?) so probably don't have too much time right now.

vanepp commented 5 years ago

@karpawich "Which parts repo are you speaking of? I might be able to help.": fritzing-parts, it is just ignorance on my part :-) , I managed to initiate a couple of pull requests, but on the third I've forgotten how I made the first two work (and failed to write it down). It does the compare between my fork and the nightly-build repo, says it can't automatically merge (which is odd because it is a new part) but I can still make a pull request. The problem is there isn't a pull request button there. I think I had to change to somewhere else to get the pull request button and now can't remember nor figure out where that was.

Peter

el-j commented 5 years ago

@vanepp i will check this

el-j commented 5 years ago

@vanepp so i merged most of your pull-request because "i trust you" about your parts. this opens a new world here that has to be solved: PARTS_CREATOR it is really necessary to build a parts-creator so creating and contributing parts gets more straight forward for all users. i see the parts-creation as one of the main "pain" points.

vanepp commented 5 years ago

Thank you, now I can see if something about unmerged pulls was blocking further requests (there is a second board for the Sony part that I can't make a pull request for) or I'm doing something wrong. My bet is I'm doing something wrong. As I said, I think the parts creation area is where I can be the most help. I know part creation fairly well now, and the FritzingCheckPart python script is getting some additional checks added (to remove tspans for one). I'd like to get it to the point of being able to remove translate/transforms because I think (without any proof yet until i can insert timing code in to Fritzing which requires the dev environment to run ...) they are a performance problem. A transform or translate I think causes a matrix multiply at every render. If you pre apply the transform / translate at part creation time, you should save that multiply on every render. That is only somewhat possible with Inkscape though, ungrouping wiill remove many transforms but not all (rotation in text and polygons and often paths are some that don't get removed for some reason.) I would actually think this would be an important optimization fro web pages too, because they should face the same issue. Whether it is a signfigant saving or not I don't know yet. I do know that parts using subparts cause Fritzing to slow down noticeably when there are 8 or 10 of them present. It should also be possible to rapid prototype a simpler part creation process in python, then when I have something work able recode it in the language of the day. I guess we will see as this progresses.

Peter

karpawich commented 5 years ago

@vanepp What is your email? I'd like to talk with you a little more in detail about your knowledge of Fritzing parts.

vanepp commented 5 years ago

vanepp@sfu.ca will find me.

Peter

karpawich commented 5 years ago

@PatrickFranken are you aware of any legal restrictions on developing a spin-off of Fritzing? Patents, etc..

Marco-exports commented 5 years ago

I am in awe of the whole Fritzing initiative ! As a veteran developer of desktop and client/server apps, I was able to shift out to cloud computing and hardware IoT solutions, learning Arduino, using Particle.io devices, and now an ambitious RPi project for home automation. I've built 0-10v control devices that can speak to Arduino and RPi, to control Sabiana fan coils and Rockwell valves for A/C chillers in homes. I built 0-12v switches for door security, also to turn down A/Cs when guests leave doors open. I made tiny distance sensors to turn LED strips on/off inside cabinets. I'm now designing boards to control cistern tank with alert-low and alert-high magnetic sensors, using "latching-relays" to turn on cistern 220v 3/4hp pressure pump. All of these will be on my future web site, offering Fritzing files with logic diagrams that tie entire house into Node/React apps that you can manage from an iPhone or iPad. Bravo to the entire team behind Fritzing, and thank you for making all of this "open source" for us to learn and develop from. I hope to contribute back soon. Marcus

benreu commented 5 years ago

I use Fritzing for my one man PCB production business (operating since 2013). I would like to help with coding or wherever I can. I am fluent in Python, Gtk and Inkscape, but have very little experience in C++ and Qt.

One question is, if we are going to use JavaScript, what GUI toolkit is going to be used? Does Qt have JS support?

At this time, I do not have the capability to help with funding. I do have quite a bit of parts that I use (created with Inkscape) that should be with the Fritzing parts.

I am very glad to see somebody pick up this project. Cheers!

Quidtie commented 5 years ago

I’m a new user. I had Some trouble with this issues:

BKeyport commented 5 years ago

I consider the project dead, buried, and done, along with my use of computers to help work with the limited electronics I do. All the design tools suffer the same fate.. Either extremely complex that you can't get started unless you have a doctorate in CAD, or so simple they have no way to expand..

I'm a hobbyist. I want to design from breadboard (without super large "3d" part pictures) or schematics, test (Yenka style), and if I like the design, transfer it to either perfboard, etchboard, or maybe order one pcb and related parts....

PatrickFranken commented 5 years ago

@karpawich Good point! To fully understand the legal restrictions I've to explain a bit more about the legal structure first.

First of all: We, i.e. AISLER BV, entered into an agreement with Fritzing UG, to become the official Fritzing FAB in February 2017. How did this happen? We approached André, the chief maintainer, in late 2016, and asked him whether we could become the Fab. We believed in making fabbing as easy as to use as Fritzing was for designing. We had shown him a prototype of the native Fritzing integration and then negotiated that we would contribute 10% of our Fritzing-based revenue back to Fritzing. We intended that this money go back into the future development of the software, allowing both Fritzing and AISLER to grow with this collaboration. Whether our contribution was used for this purpose, we don’t know. In hindsight we should’ve made a background check on the legal structure and maybe be more explicit in the contract that our money should be spent on the further development (and even if it was just a paid project manager/maintainer that brings the project forward).

As far as I know, the critical infrastructure is completely owned by Fritzing UG: this includes the forum, the website where you download Fritzing (even though the imprint tells you otherwise), domain name, etc This is where users go to when they google Fritzing. Hence access to that requires the collaboration of the legal entity Fritzing UG. Also, the users of the Fritzing web presence (including the forum) seem to close a contract with Fritzing UG, so we assume its legally their customer database.

The other entity, the German Verein “Friends of Fritzing e.V.” however owns this repository (or it is at least ambiguously stated), the wordmark in Europe under the number 010990802 (https://euipo.europa.eu/eSearch/#basic/1+1+1+1/010990802) and the trademark in the US under the number 79122280 (http://tsdr.uspto.gov/#caseNumber=79122280&caseType=SERIAL_NO&searchType=statusSearch).

What I don’t know however, is how these two entities are connected or whether there is a contractual agreement between the two that allows the UG to use and sub-license the trademarks. The Verein, even though in theory everybody could become a member, I have not seen anyone being able to become a member in the past two years. I also don’t know who actually is a member.

All in all, I believe that the original creators of Fritzing, coming from a publicly funded project, did not have any bad intentions but rather didn’t know how to make it sustainable project. Creating a profit making arm was a great idea, but this attempt died when the creators followed other projects that made more money (I really don’t envy André, he’s still fixing some things in the background even though he has other fulltime obligations and a family to take care of). Yet, I still believe it is better to get the creators to cooperate rather than forking the project because Fritzing is a global name that will be hard to replace: it has a long history and will be googled by new beginners as all reference and education material includes Fritzing. A fork would mean a lot of promotion and effort would have to go into getting new users, as the forks potential sustainable model also needs to rely on users coming to that fork.

WimberleyTech commented 5 years ago

Brainstorming here...I wonder if you could buy the rights from Fritzing UG (FUG)--i.e., take ownership of FUG. Then merge that with Friends of Fritzing e.V. and then move on from there. Or, just create a parent entity and sweep the other two into it. Is there a "person" that can be contacted at FUG? Of course, Aisler is sending FUG monthly checks (I suppose), so why would they give up free money? I am curious...how much money is going from Aisler to FUG.

HaraldRau commented 5 years ago

These are the data from the commercial register:

Handelsregisterauszug.pdf

I'm looking for the register for "eingetragene Vereine"

ShravanJ commented 5 years ago

Fritzing has had a profound affect on some of the projects I have worked on. I am primarily a software engineer but tools like Fritzing have really helped me get into hardware design. I applaud the efforts of everyone involved in Fritzing and hope to see this wonderful piece of software continue to be updated.

karpawich commented 5 years ago

@PatrickFranken Yes, I have come to understand that we must eventually migrate back to Fritzing. Unfortunately, any legal matters concerning Fritzing are outside the scope of my knowledge and work, so kudos to anyone who is working to find a solution to that side of things.

In the meantime, I don't see any harm in rebuilding and breaking it down in JavaScript, so I'll continue my work there with the others who expressed interest. I'll keep watching this discussion for any updates!

iotricity commented 5 years ago

I've used Fritzing for many small projects of my own. But most of all it is a simple to learn tool for those who are not familiar with electronics but can see how to interconnect the parts on a breadboard. From there learning how to read schematics. And some made it even to creating their own PCB. The ease of uploading the design to Aisler and get your board, which are high qualiity, produced is a wonderful combination. I've created several courses for both kids (10 to 14 years old) and adults using breadboard layouts made with Fritzing.

Please keep up the great work.

jimbooth97 commented 5 years ago

Hi All, well, i can't add much to this upgrade effort because I don't possess the necessary skills. However, I can say if it weren't for fritzing I am not sure i would have been successful making any PCBs. It may surprise folks, but I only use the PCB view to build a board. I like the fact I could use the breadboard view or schematic view, but when I am ready to build the board, i skip those parts.

What I would ask is that fritzing has a nitch in the pcb development arena, and that is the fact it is easy to use, please keep it that way. I would be happy to beta test anything new you come up with. If I can use it, anyone can!

Jim

neon-glass commented 5 years ago

Within the last year I have used Fritzing to design and fab two small circuit boards. I would hate to see it go away. I'm a bit biased but I don't see how trying to rewrite the whole system in a different language would move the project forward. It could very well bring it to it's end.

karpawich commented 5 years ago

@neon-glass I apologise if I'm getting the wrong message across - the Freetzing project by no means has to be the only attempt to save Fritzing. I'm working on it in JavaScript because that's what I know, and that's what the majority of developers using StackOverflow and GitHub know. If some other group of developers out there is familiar with C++ and Qt and wants to work to help fix the existing version, then that's great! I'm just helping using what I know. If you're interested in helping fix the existing version, or if anyone is for that matter, I'm not here to dissuade you. In fact, I'm sure that everyone here would appreciate your work.

benreu commented 5 years ago

@karpawich Could you explain a bit more on the Freetzing project? Will it be browser or desktop based? A replacement for Fritzing or just a add-in tool of some kind? I can't find any real life examples. Excuse my ignorance...

neon-glass commented 5 years ago

@karpawich Thanks for the explanation. I admit I had gotten the wrong idea from your post. I fought in the language wars back when C was the newcomer on the block and then later when it was overcome by the forces of C++. I still hold a grudge against Bjarne :).

@neon-glass I apologise if I'm getting the wrong message across - the Freetzing project by no means has to be the only attempt to save Fritzing. I'm working on it in JavaScript because that's what I know, and that's what the majority of developers using StackOverflow and GitHub know.

vanepp commented 5 years ago

@neon-glass : Unfortunately development on the C++ / Qt version of Fritzing has pretty much died. At present automatic parts update on Windows is broken. I know how to fix it (and appear to be the only one working on doing so), but the development environment is both complex and poorly documented, and was up, until a parts update a few days ago, broken as Qt is objecting to some of the parts in core and crashing Fritzing. I found those and fixed them and can now continue trying to get a dev environment running. The Qt 32bit Windows installer was (and perhaps still is) also broken when last I tried (back last summer and apparently had been for several months before that). I am still trying to get to the point where I could produce fixes for the QT / C++ version and will continue to do so, but at the same time I'm working with the Freetzing folks to try and get that going. Fritzing as it stands is going to die. The external interfaces (such as libgit2 which is what is breaking Windows currently) will eventually get so old that they will stop working completely as the base operating systems change and no longer support the versions of the utilities that Fritzing is using. Without someone willing and able to update things, that will be the end I expect. There doesn't appear to be a path forward unless I can get a development environment for all platforms working (which I have not so far) and then convince whoever is in control of the web site to make a distribution (I can't do so, I don't have access). I don't know if the javascript version is viable, but I hope so because I'm not sure the current code base is. I have been trying to get development going for several years now and there is a remarkable lack of interest from pretty much everyone. The code is complex and has few comments, and I have found no sign of anyone familiar with it that is willing to provide advise, so I wouldn't hold up much hope for progress on this front at this time. I hope that changes, but it hasn't so far.

Peter

BKeyport commented 5 years ago

Not knowing the legal aspects of it all, what's the problem with doing a new program with like features?

PatrickFranken commented 5 years ago

That’s a good point. From my experience it is usually difficult to get old users to convert to a new similar program because they are used to it and like it. @BKeyport do you any ideas how we could succumb this challenge?

el-j commented 5 years ago

From my point of view, in don't see any issue in a new name if the tool works. Adding links to wikipedia and write some posts here and there will help in no time to spread a new name. And if you really google for fritzing you will find artictels about better not using it...

The lack of development and the lack of action is a strange behavior that is somehow connected to fritzing ug. I tried multiple times getting more information and getting deeper into the project without any answer. And it does not matter if i ask in person or via mail. I do not get any real answer....

So thats why this bold idea should move to a place were everything comes more transparent for users, developers and contributors... i mean: what is open source if it is somehow closed?

So i am with max: if anyone wants to help fixing things for the qt-application it's nice and good to see. But: to really resuce the idea of fritzing > we have to start a new open organisation with transparenz and a future without chains...

rain-1 commented 5 years ago

Has anybody been able to contact the original authors?

I see the github address has an email, info@fritzing.org has anyone tried to reach them?

poetaster commented 5 years ago

I've tried contacting them when the capture died and new accounts for the forum couldn't be obtained. I didn't get any replies.

poetaster commented 5 years ago

I could help do QT build testing on Linux. I have some experience building QT apps with 5.5 (mostly for Sailfish OS, but some desktop stuff). I'll see if I can get the current source to build.

rain-1 commented 5 years ago

If the original authors seem to have completely disappeared then I agree that forking the source and infrastructure is a good idea.

rain-1 commented 5 years ago

Apparently SparkFun had a deal with them, Perhaps we could reach out to sparkfun to try to contact the original authors through them.

gfwilliams commented 5 years ago

Thanks for starting discussion around this @PatrickFranken

I'd just like to add my support for a reimplementation as a JavaScript and ideally web-based solution (being able to add interactive diagrams to websites would be amazing).

Since Fritzing's target is really non-techies, I imagine having something that was easier to install and use in an educational setting (and that worked on iOS/Android/Chromebook) would be a real bonus - not to mention the increased likelihood of contributions.

IMO the best bit about Fritzing is the parts library, and that appears to be an entirely open Creative Commons effort using SVG which is already pretty web-friendly.

While obviously Fritzing has the name, if the Maker community jumped on it (imagine if Adafruit and Sparkfun used it for all their tutorials) then I imagine a new version could get popular very quickly.

mountbaldy commented 5 years ago

I don't know how much I could contribute to the project but I will say I will always be a Fritzing user! It has helped me develop a few boards and sparked my interest in electronics development. The little I have used Fritzing, I will say I have seen a few flaws here and there with parts and how they integrate. I do like the idea behind being able to test out things on the breadboard first before integrating into a PCB. I made the mistake of not following that step and found myself with a stack of unworkable boards. I'm not upset with that though. It was definitely a learning process. I plan on using Fritzing in the classroom to show kids what they can do and show them how they can create electronic projects easily as well.

Thank you for pursing keeping this project alive. I can't wait to see what the project looks like in another year!

Cheers,

Mountbaldy IT Guy in K12 Education