3
8 Comments

Idea feedback: Ninja Fileman and App Simian

My two projects are all focused on improving the software development process:

  1. Ninja Fileman, a streamlined file manager and text editor that makes the experience of reading and navigating code pleasant. I like to study other people's code but I find it very difficult with current tools (too many steps, ugly formatting, ugly colors and fonts, too much scrolling, no built-in semantic analysis, too many inconsistent plugins to search for and install, etc..)

I've been using the current work-in-progress of Ninja Fileman for several weeks on for real work, and it's really boosted my productivity.

  1. App Simian, a webapp to make webapps. This is a prototyping tool where you model your application's concepts and rules, without having to deal with css, javascript, or a server language. I take care of crafting simple, effective, cross-platform UI components that you can customize. I also take care of the database, url routes, and file hosting. You just need to focus on your application concepts and rules. Think of it like 3D authoring software such as Maya or 3D Studio Max; you model and animate using Maya, but you don't need to muck with any of the math or coding that went into the entirety of Maya -- compare this to the sad state of web development right now.

You can use App Simian in several ways:

  1. prototype an idea in a day instead of weeks
  2. implement and launch an MVP directly
  3. use it for UI design, collaborate with friends or teammates

Here are some screenshots: https://imgur.com/a/etEqS

I am about a month away from a usable beta, stay tuned :)

  1. 1

    I like the first idea! Sometimes I want to browse through code on Github, but it's really not easy, I'm not able to click through to method definitions and what not. I usually end up having to checkout the project and import it into IntelliJ and let it index it.

    1. 1

      I know just what you mean! Ninja Fileman is really to scratch my own itch, but I think it might be helpful for people learning to code or people learning from other people's code, or for people who just feel like they're lost in a tidal wave of code and folders.

  2. 1

    App Simian sounds great. I had this idea myself too, but I kinda never seriously got into it. (strange that MoonBeast, you and I had the same idea, probably a good sign)
    With great execution I definitely see potential for this. I know some people, who are non-coders, that would probably be very interested in something like this.

    1. 2

      I'm initially focusing on making it easy to make CRM-like software; for as long as I've been programming professionally, I've wished for a base application that I could customize and add to in a fashion that shouldn't involve coding. Features like user accounts, sending and scheduling messages, file sharing, tagging, organizing things into hierarchies, user permissions, etc.. are common in pretty much any piece of groupware. I want to build on top of this base, tailoring it to meet domain-specific goals.

      I don't want App Simian designers to code not because coding is hard; more importantly, code is a liability. I want app designers to focus on application goals, not technology. I take care of the technology, App Simian designers focus on their business.

      I also want the apps that App Simian designers make to have beautiful, accessible, fast, simple UI. To build browser UI now, you would need to use or consider using flexbox, css grids, bootstrap, foundation, patternfly, ionic, material ui, icon fonts, SVG, Canvas, VML, HTML, HTML5, ARIA, Ecmascript 5, Emcascript 6, Typescript, CoffeeScript, Angular, React, Ember, Vue, jQuery, D3, Gulp, Bower, Webpack, AMD, Babel, etc... That is a ton of buzzwords to research. Then in a year, there will be a ton of other vaporware libraries to try. Existing competitors don't require you to learn those things, but they make the situation worse because they simply make their own versions of the same, mind-numbing stuff -- for example, pretty much all of my competitors give you drag and drop editor with a big 'ol list of properties that can be customized, such as the positioning of elements, the widths of elements, the rotation, the box shadow, the box shadow radius, a field to specify what happens when a button gets clicked, etc... This is just painful; I give you a choice of UI themes and Application templates, then we just get on with the show, no need to position or choose among layouts, I've taken care of that by crafting an entire UI that's designed to look good, be accessible to visually impaired users, and easy for anyone to use. If you want to let users manage a set of tickets, I give you a fully functional UI that lets people add, edit, delete, reassign, and categorize tickets -- I don't give you a palette of every possible type of UI element and expect you to drag and drop them into place, to define how the UI should adapt to different screen sizes, or what to do when the 'Add new ticket' button is clicked (obvious stuff should be done for you automatically).

      Other visual prototyping, low-code, or no-code platforms allow you to extend their platform with your own code. That is a big mistake, because that act alone has locked them into backwards compatibility hell. I am outright not accepting user-contributed code. What I offer instead is that I will encourage you (App Simian users) to tell me what you are aiming to do; I am very good at making UI, and quite good at making fast back-ends -- come at me with feature requests, I will come up with a solution that's tailored to your needs. When my users can focus on application features, I can even provide A/B testing of different UIs (you want to show the latest tickets assigned to Bob? is a table better, or is a list better, or maybe it adapts based on screen-size); maybe one user prefers a bootstrap-styled UI, another prefers material UI, let the end-user choose, the business logic shouldn't need to change! Think of App Simian as a technology partner, not just a prototyping or RAD (rapid application development) tool.

      Apologies for the long post :)

      1. 1

        Thats great what you are trying to do! I hope I can try it sometime!

  3. 1

    As SD I have never faced the problem you described...
    As for the second app there are so many prototypers...
    Good luck.

    1. 1

      No problem, though I hope you'll give Ninja Fileman a try once I get the beta out :)

      My approach with the prototyping app is to make it simple for non-developers to use, and to be a viable solution for going to production as quickly as possible (not just prototyping).

      1. 1

        Yes, sure, looking forward to trying it!
        I've got your idea about prototyper and actually I thought about the same many times but the task looks too big for me (at least for the current situation).