Software design tools

It has been about 20 years since I wrote programs of any real complexity, but I have taken on a couple of projects that are headed in that direction. Now, I feel like a fossil resorting to flowcharts and lots of pseudocode to sketch out my designs. Can anyone recommend design tools they have found especially helpful in working with Node-RED, either on flows or custom nodes?

Not a design tool as such but everything happens in VSCode now for me.

For collaborative work Miro or Mural are really useful where you need to work with others. Or maybe Lucid Chart if you want something a bit more structured.

For note keeping and knowledge-garden, I've always been a fan of Microsoft OneNote but recently, I've been moving all my programming and tech related knowledge to Obsidian which is all Markdown based. One of the nice plugins for Obsidian is Excalidraw which is nice for simple diagrams like this:

There is also a simple Kanban tool for Obsidian which I sometimes use.

Not sure if these were the kind of things you were thinking about?

1 Like

@TotallyInformation many thanks for suggesting Obsidian, at last it seems I may have found the notes app I have been looking for for years. I don't know why I didn't find it previously. Initially at least, it seems to have everything I have been looking for.
Do you sync with Android? If so which option do you use for that?

I have just started using Resilio Sync which I use for NAS, Android, IOS and Ubuntu.

Easy to install and seems to run fine with updates happening in the background if you wish. Battery drain on Android is affected if it runs in the background, but then I am talking about 4-5 days down to 3-4 days. You have to STOP the App.

Ah yes, I felt the same way too when I found it.

Well, their own sync service is too rich for me. So I'm using the "Remotely Save" community extension. Not sure that it works all that well though and I haven't really worked it out. I'm sure I'm missing something obvious. It might be because my actual vault is on my personal OneDrive anyway so maybe there is a clash. Not sure.

I am trying DropSync on Android, having put the vault inside the laptop's Dropbox folder. It seems to be working so far. I have a separate daily backup of vault via my routine backups so that I shouldn't lose too much in case of disaster.

I moved my SimpleNote notes across just by exporting and renaming all the .txt files as .md and mostly it is fine. The internal links are not correct but I think a simple script should be able to sort that, or I may just fix them as I hit them.

1 Like

I also linked my blog's md files into the vault which means that I can edit my blog from the vault. If nothing else, makes copy/paste easer.

Not exactly, but this has been valuable, especially the mention of Obsidian. I'm becoming more comfortable with VS Code, and will probably give up my other code editor(s). I have also been looking for replacements for Evernote and Dropbox, as they keep becoming more bloated, expensive, and intrusive. No conclusions so far.

My real need is for flowcharts of my programs at a pretty granular level. Those, as well as "big picture" architecture views, I've been doing with Keynote (PowerPoint for the rest of us), but it's not great. When someone else was paying the bills I used Visio, but I doubt I could even make it go anymore. One thing that looks promising is the draw.io (diagrams.net) extension for VS Code. It's a pretty slick, if basic, drawing tool and has some limited integration into the source code. I'll post if I can make it work for me.

I think that's how most people feel.

Trickier. I never got on with Evernote but OneNote has been a firm favourite since before Microsoft even took it over (I even founded the OneNote Pro's LinkedIn group). I did play with TiddlyWiki for quite a while but it was just too complex (though I did build some interesting things with it including a project reporting tool that I used for a number of contracts). But for everything except hand-drawn and mixed media notes, I have to say that Obsidian has taken over. OneNote still shines if you have a tablet though and does amazing things with audio and video linked note-taking. It is still my daily-driver notebook for work.

As for DB, I only ever really used it because it was the only non-Apple cloud storage commonly used on iOS devices for a long time. But once Microsoft finally got their act together, it is hard to beat OneDrive which I use both personally and professionally (in its OneDrive for Business guise as part of Office 365). For personal use, you can pick up a "family" pack for about ÂŁ55 per year with discounts and that gives you 6x 1TB accounts. I use 3 for the rest of the family and the other 3 for myself. And you get Office thrown in. I use 2 of the accounts linked to backups on my NAS. Since the OneDrive client is available on just about every OS including mobile, it is now my go-to cloud storage.

Yes, it isn't bad. There is an Obsidian extension for it as well. There is even a Grafana extension. Also a standalone desktop version.

I mentioned the Excalidraw extension for Obsidian as well. That does a great job for simple drawings (you don't have to stick with the pencil-like scheme). It has quite a few extension scripts and has the advantage of both a text-based description format and easy export to SVG. The scripts include a mindmap but not a specific flowchart template. You can also integrate Excalidraw into VScode.

Other cloud tools I've used include Miro or its poor cousin Mural. Or the excellent Lucid Chart. They all have flowchart templates. Their free tiers are limited though. Also watch out for limited export features on many of the cloud tools. If you can't at least export as an SVG, you get stuck in the tool. Lucid is good for this since it also supports both import and export to Visio format as well as SVG and others.

Of course, you shouldn't forget Mermaid which allows creation of diagrams (including flowcharts) using text-based instructions.

If you ever find a viable alternative to evernote, please let me know!
I use it every day and it nicely supports me stashing away unstructured pieces of information but offering a good chance to find it later with its superb search. But yes, lately it got a bit sluggish.

Alternatives for Dropbox? How about iCloud Drive, Google Drive or if you have any MS licences anyway, go for OneDrive. I fully replaced Dropbox with iCloud and OneDrive.

@zenofmud posted a Flow Chart App yesterday, but it is from an online app, not sure if you are up for that...

It looks smart, and it seems you can download to your device.

What about Nextcloud?

Code2Flow would be another online option for creating flow charts.

Not seen that one, thanks for sharing. Can export as SVG though not entirely obvious how. Click on share, choose the SVG option and open the URL in a separate tab and then save as a local SVG file.

1 Like

Code2Flow advertises " No more messy drag & drop editing." :wink:

Haha! Ironic, what?

Though I do get it. As with Markdown, and things like Mermaid, the ability to define graphs (which, as you know, are nodes connected by wires - not to be confused with charts :slight_smile: ) using text can be a really easy way to create them quickly.

In fact, it would be amazing to be able to write flows that way! :mage:

I thought that is what you use charGPT for...

1 Like

Thanks for taking time to think about this. (Everyone else, too.) You may have confirmed my suspicion that for me there's no clear winner in any of these categories. Before COVID, my MO was strictly "have laptop, will travel," so anything requiring an internet connection was problematic. (Also, everything had to be encrypted in place, complicating things a bit.) Now that I'm winding down my practice, I'm looking more for convenience and low cost.

2 Likes

Each to his own. I'm not giving up my mouse anytime soon. (I sometimes wonder where computing would have gone if the rodent had not been invented.)

2 Likes

Guess we would be talking to our computers casually by now while having our hands free.

BTW, if you are into IT, do sequence diagrams now and then, and like textual definitions, check out https://www.websequencediagrams.com; use it now and then to quickly define interactions.

2 Likes

I know exactly what you mean. My laptop was everything. Now I only turn it (actually one of several) on when I need to travel and know I'll be at a desk for part of the day. And while the state of WiFi on UK trains has improved a fair bit, connections are still a bit hit and miss.

My devices are all full-disk/storage encrypted all the time and I only use cloud storage that I know is encrypted at rest (though shared keys generally so security bound to be a bit limited) so less of an issue except for the most sensitive stuff.

Ah, but I didn't say I was giving up on the mouse. But rather there are times and there are times. I've been a keyboard person for over 40 years so it is much faster than writing. I also discovered early on when starting to use a mouse that - as a lefty - having the mouse on the right means I can use both mouse and keyboard together. Then there are my Microsoft surface laptops with the nice pen - but that's another thing. :grin: