In the weeds on my MVP

I’ve gotten a respectable start on my MVP project. I’ve gotten a lot of the basics done –as in, this is basic, now you need to add/change …

Easy stuff like creating a readme file, spinning up a node with express server on my localhost (e.g., running off my computer only) for testing and development, setting up bare-bones route files and client files are done –lots of changes will happen within those files though. I’ve written a few tests and need to write a whole lot more.

I’m re-thinking my database decision. Because my app will need real time inserts into the db (and being able to have dynamic table creation would increase functionality and allow for adding in later bells and whistles), I am thinking that I really should be utilizing a NOSQL database. I’ve got the mysql tables and their joins all mapped out but am seriously thinking of scrapping that plan. I’m going to take a day to mull it over.

Today, I am brushing up on ES6 and reading, reading, reading documentation on React.

7 responses to “In the weeds on my MVP”

  1. Omer Zak says :

    Some thoughts:

    1. How many records per second do you need to insert into the DB?

    2. How many indices do you need for the DB table/s into which you insert a lot of data? (The more indices there are, the slower record inserts become.)

    3. Did you actually measure the time it takes to insert data into the DB and found that it is too long?

    4. According to D.E. Knuth, premature optimization is the root of all evil. In your case, premature optimization would be switching to another DB.

    5. How much will the rest of the application change if you switch to a NoSQL DB? (If the application’s design is properly modularized, there should be almost no change.)

    • israeliminx says :

      Hey Omer,

      Good advice, thanks!! I’ll definitely be keeping those issues in mind!

      Right now, everything I’m doing is all in the theoretical — I’m not expecting any real people to actually use this puppy even once it is deployed: I and a few friends will be faking real people with it to make sure it all works. It is an exercise in taking all the pieces parts that I’ve worked on completely separately and for totally different practice projects (server, framework, api, db, design, testing, deployment) and actually putting them all together for the first time and from scratch. In previous practices, we were always given apps that were 90% done and we just needed to implement the server, or server, db and so forth were in place and needed to work in the framework (backbone, angular, react) and a lot of even that was already in.

    • Omer Zak says :

      So do not bother to improve the DB decision.

      Even if it was for a real Website, you’d not be wrong to select MySQL.
      In real life, people bother to optimize this part only if it turns out to be a bottleneck in actual operation.

  2. lynne says :

    Wow! It’s like Yaeli and Omer are speaking some kind of secret language🙂 I have no idea what they are talking about other than “computers”. It sounds amazing though!

  3. israeliminx says :

    Ema, it is a bit like a secret language🙂

    Omer, I’m taking your advice and not switching from the MySQL database! I’m spending this week getting the db in order and working on some of the client-side basics. Since I want it to be as mean and lean as possible, I’m also looking at dependencies and trying to figure out which ones I definitely do need as a must-have and which ones I can do without, via my own coding work-arounds. I’ve already ejected webpacks from the initial list I’d put together of possibles. Browserify is still in the running but …hrm. Lots of hrms. This is definitely lots of fun — a real puzzle and getting to actually create the puzzle pieces!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: