3
13 Comments

best development platform to use - considerations

I've got an idea within my equipment industry for an online advertising presence. I have the business experience, but not the coding. So, I need to learn the second part. I have played on my own websites with the html and learned data structures in college. In other words, I can do the learning, with some background, if given specific things I need to learn. I don't want to spend thousands of dollars to have this done for me, in other words. My business gives me the time to devote to this as needed.

The customers are like me, other copier and office equipment dealers. The monetization will come primarily from premium advertising, such as showcased items. Free advertising will be huge in the beginning, just like Craigslist and other models. My idea is different because it is more specialized and will target "the specific buyer audience" through a mobile application, which will load the "list" in real time whenever the app is opened. In this respect the advertisers offerings will go to the audience instead of the audience searching through hoards of industry advertisers. Does that make sense.

I will need to develop, both the online advertising, (think Craigslist) or equipment trader, auto trader, for example and a complimenting phone app. I realize I have a lot of work to do, and really, I'm quite unsure of how large the scope of this may be or if I am absolutely misguided. On the other hand, I feel that I have a real advantage being a part of the industry and being both a buyer and seller of the type of equipment dealer I want to cater to and putting together buyers and sellers within the industry. I envision contacting those to download the software directly through email and actual phone calls to other dealers I know. I don't see using a google play or Apple Store type of distribution model. Am i barking up the wrong tree here?

Any suggestions as to what I should learn and use and how to best focus my learning to get this going. I do not require income from this any time soon. Maybe I can develop a loyal base before chargine. Thoughts?

I appreciate any suggestions. If I'm on the wrong forum, please say so and I'm sorry for intruding.

on December 17, 2019
  1. 1

    MecKey is a cutting-edge business dedicated to providing dependable machinery and efficient solutions for the processing of agricultural goods. Our tools and procedures have previously been put to use in projects abroad and have proven successful thanks to our expertise and ongoing technological process improvement.

    check out the website for industrial equipment: https://www.meckey.com

  2. 1

    Another vote for Ruby on Rails.

    What it sounds like you’re building is a simple business app. Forget about fancy tech like NoSQL DBs, React UI and native apps for now.

    As the saying goes, Keep It Simple Stupid. If you try to learn everything at once you’re going to get overwhelmed and give up. I’ve been there.

    Stick to the tried-and-true server rendered web app and an SQL DB (Postgres is the go-to these days). You’ve got a ton of work ahead of you just getting this thing off the ground.

    Start by figuring out your DB schema first. What entities you need and how they’re related in terms of “has_many” and “belongs_to” associations. This will govern how you architect the rest of the application.

    Good luck!

  3. 1

    I don't see using a google play or Apple Store type of distribution model. Am i barking up the wrong tree here?

    Are you sure you actually need a native mobile app and not just a mobile-friendly web site?

    1. 1

      No, I'm not sure at all. I was thinking the same thing after posting. key will be the ability to read and store large inventories that need to change daily to give near real time availability. The front end isn't so complicated, I think. Good searchability by location and certain specifications native to my industry and a nosql type of database maybe (?) It needs to be variable as the data will probably need to be read in from wholesaler files (excel, or otherwise). My familiarity with stacks is from Data Structures in college and using pascal language or PL1. I'm sure I can find good examples to follow, but really have to dig in the right place. I just started a python tutorial series on youtube. on the other hand, maybe I can get this up and running for not too many thousands of bucks.

      1. 1

        It sounds like the only mobile consideration you really have then is a responsive layout (which is related to CSS, not a programming language). Your very fastest way to get this built would be with Rails. Ruby is a famously beginner-friendly language and nothing beats Rails in terms of speed to market. If you have a strong preference to go with something else, your next best bet would be PHP+Laravel.

        Python is a great language, and actually very similar to Ruby. The problem is it doesn't have any web dev experience on par with or even that close to Rails. It's much, much more fractured, both in that it's used for development more generally as opposed to having web development as its center of gravity and in that even its web-dev community is pretty fractured. There's no "one golden path to follow" and you'll have more decisions to make at every step.

  4. 1

    Honestly, you can use any language/platform you like to develop this. They'll all work. I'll address the web/server side of things first.

    PHP is effective for people that are coming to programming without a programming background. A lot of people who aren't full-time coders use it (e.g., designers), so there's a good amount of beginner resources.

    Next, you could go with either Python or Ruby. The two languages are about equivalent. They have some different opinions, but on average (productivity, expressiveness, performance, etc.) they are similar. Python has a larger community, but Ruby on Rails (the leading web framework for Ruby) is one of the highest productive web frameworks out there.

    You could consider JavaScript. Frameworks like Express will let you build a site pretty efficiently. It also has the benefit of letting you write your client and server-side code in the same language. That said, JavaScript isn't a terrific language (IMO) and Express is fairly low-level, so it will take you longer to get productive with it.

    For a mobile app, I'd use something like React Native so you can target both iOS and Android. That will get you something that you can get in front of users. In my opinion, I haven't seen a React Native app that looked truly native, so I usually just write native iOS apps in Swift, but that's probably overkill for getting an adequate MVP out the door and it doesn't help with creating an Android app. Side note, React uses JavaScript, so that might be a vote for using JS on the server as well.

    1. 1

      I was thinking as I was reading. Do any or all of the frameworks have the necessary components to read, store and query on a database, built within the framework? Considering the amount of data (inventory items, terms, FOB, etc..) that will need to be loaded at least daily (possibly 1 million records or more) from wholesalers does that necessarily change the data structure used or these days is that still a small amount of data handling? Since I was trained as a programmer 30 years ago, I'm sure what I learned is no longer applicable, but I do remember vaguely linked lists, stacks and arrays, for what its worth. I'm just wondering if there is now one framework that has it all, where you just pick something from the library and alter it to meet the need at hand. Of course, I will have a technical bulletin board where geeks can exchange problem solving and that may be another ball of wax. Any more specific thoughts on this. It seems python is pretty straight forward for me to relearn coding. Looks sort of like a combination of basic, Pl1 and Turbo pascal, with very simple variable use, and almost english conditional statements. What can't be done with it, is the question.

      1. 1

        All the frameworks can read/write/query a DB. One million records isn't that big a deal, but depending on how you handle ETL, that's probably a different system than your web framework. You will, rarely, deal with the data structures you mentioned directly. The frameworks are all higher level than that. An, no, there is no framework that has it all. They all have their strengths and weaknesses and anything non-trivial will require getting your hands dirty and doing some coding.

        Python sounds like a good start.

    2. 1

      Thanks emathinsen. Thats a few considerations. React seems to be very popular. I appreciate your feedback.

      1. 1

        React is for highly interactive front-ends. Being JS-rendered, it also breaks SEO unless you add additional tooling to pre-render your page. I wouldn't recommend it in your case until you have some traction and can hire another dev.

        What it sounds like you need now is the most productive stack you can get. Worry about scaling, design flourishes, etc later.

        1. 2

          FWIW, I was recommending React native to do some MVP mobile apps.

          1. 1

            It's not a bad idea in general... just tough for one person (especially one who's learning).

  5. 0

    It sounds like a responsive web site is the best way to start. That will reduce your time to market by letting you focus on one thing (site) instead of two (app and site).

    I’d recommend you give Next.js a look. That’ll let you use a single language (JavaScript) with a very widely used UI library (React).

    Since you’re already comfortable with HTML, Next.js w/ React will have a gentler learning curve. You’ll be able to quickly build a basic site and then gradually add dynamic behavior to individual pages.

    I’d also recommend using Bootstrap for the UI styling as it’s easy to get something good looking for free and there are hundreds of custom styles online that can be purchased for a few tens of dollars.

    If you go with Next.js / React then reactstrap is the specific variant of the Bootstrap library you’ll want to go with.

    If the website will be read only for visitors, then you could even get away with skipping a classic database at first and just use a static CSV file (or some other format like JSON). Doing this will initially will further reduce complexity and further cut time to market.

    A final thought: going with Next.js would afford you the ability to do all your development on CodeSandbox.io. No need to hassle with setting up a local development environment. A paid plan will let you make the sandbox private. You can directly deploy to Zeit.co’s Now hosting platform (great free tier).

    I’ve been doing software development for twenty years so setting up local development doesn’t bother me.

    Using CodeSandbox on a paid plan has been a game changer. Just this Fall I have quickly built 4 separate web apps on CodeSandbox.io

    I know that’s a lot of info, and you’ll get quite a few helpful and very different suggestions here 😅

    Please feel free to reach out directly via email (in my profile) if you want to chat more!

    PS welcome! You’ve asked a great question in a great place!