2019

Truth is anything you do, any tutorial you follow, any project you start and never finish, any dead-end that you head down, it’s not wasted. It’s all experience that is accumulating over time.

-LiveOverflow, YouTube

carazu.com – What’s up

This is just a quick update on what I’m currently working on. If you’re a web developer there might be a chance where you had worked with WordPress. WordPress is a good platform which also has a great community of theme developer, plugin developer, and fans. And I was one of them. At least at some point, I started to feel something is not right. Something that feels me being restricted, something makes me feels I need to “build” more than just a theme.

So when I started to code “Vanilla” PHP, it was terrible. I don’t know what I was doing. What are these “get, post, form, sessions”. It just doesn’t make sense. The program that I was building back in the day, was a simple fuel consumption calculator with a trip estimation based on the FEs. No database, no, class, no TDD whatsoever.

This was before I discovered Laravel. Maybe in a later post.

Genesis 2

So, Genesis 2 is a program that is going to log all fuel consumption for each time car owners fill in. I just want to know, how much a car consumes petrol. The worse the car, the worse the fuel consumption.

So here’s a quick screenshot from my local machine.

Deploying SwitchX on kopiahmedia.com

alpha.kopiahmedia.com is now powered by SwitchX. As you might guess, kopiahmedia is not hosted on any cloud application platform, eg: Heroku, Amazon Web Service, BlueOcean. It’s running on typical shared hosting without ssh access. And the process is tedious, eg: CRON jobs for linking storage file.

For a small scale team, I think it works just fine using CPanel at least for now.

SwitchX’s screenshots

Let me just show some screenshot how the front end of the system looks like. There’s Vue.js installation by the default Laravel 5.3. But, I didn’t even write a single line of it. Honestly, I’m no good at Javascript stuff. I know with ECMAScript etc, things just get easy. But, you know. Need to learn more for sure.

So here it is.

Update 20 July 2019: The images were lost when I migrated this site to AWS. I will find it, that’s an assurance.

Homepage

Create new product

All products views

Single product view

Edit existing product

Product image uploader

Edit product stocks and attributes

Ordered product and shipping information form

All order made

View single order details

Order detail, payment reference upload

Edit order for admin

Dashboard – business information

Dashboard – Payment

Dashboard – Homepage Customization

Dashboard – Products Management

Dashboard – Order management

Dashboard – User management

Dashboard – Google Analytic Code

SwitchX – First Released

Some major changes and fixes have been applied in the latest version of SwitchX. The entire project itself has been done from scratch. One of the reasons I did re-developed it from scratch is, I didn’t dry up the codes well. And another reason is that there are major design changes that I’ve made.

For the system name, I cannot come out with a good name. But for now, let’s just stick to the original code name, SwitchX.

Removed from the previous version.

The model cart is removed.
Model payment is removed.
The model says is removed.
The model shirt is replaced with a Product.
Model stock is replaced with Attribute.
The intervention package is removed.
Endpoint owners are removed.
Improvement in the new version
Updated to Laravel 5.3
Better URI, from product/1 to product/product-name
Homepage customization is available in the dashboard.
The product image returns the default placehold.it generic image.
Added font “Hind” from Google Fonts.
The product index shows total stock.
Ordered items saved as JSON.
Green shipping features added.
Dashboard features added for admin management.
A single product can have many attributes.
A product can have a default image.
Added Google Analytics integration.
The image is now is an interface, implementing a polymorphic relationship.

Model changes

Dashboard added.
The product is renamed.
Shipping added.

SwitchX (e-commerce) – the first beta

The first release of the system is hoping to be implemented in the kopiahmedia website. This is to help to improve the site load speed, faster ordering by the customer and also getting rid of unused features, such as comments, taxes, wishlists and many more.  So really, it’s designed custom for kopiahmedia, meaning all the processes are meant for it.

So first, I wrote some of the website business operation steps of kopiahmedia itself.

Owners’ operations

I logged in.
I click create new product
I add product details.
I add the product picture.
I see the order list.
I update the product order status.
I update post tracking.’

Customer’s side

I see a page with a product preview.
I click on the buy now.
I see a list of shirts
I read product information, including product images, sizes, and descriptions.
I register for the first time.
I click buy now.
I see product ordering form.
I fill in the product sizes.
I fill in my information as well as shipping information.
I pay using Maybank.
I upload the payment reference.
I view the details of my order including order status.

If you see, it’s kinda reading a behavioral driven development. But, it’s not. I don’t know. I wrote this just kinda like a checklist to get the job done.

Models included in the system: Cart, Image, Order, Payment, Say, Shirt, Stock, User.

E-commerce that built on simplicity

If you’re running a small business or you’re just wanna sell something, one of the tedious parts is to handle all sorts of orders from the customers. Sometimes, things don’t work as you’d probably think. And you’re kinda screwed and you don’t know what to do.

You might probably be thinking about leveling up by collecting all these orders that you’re getting, put them down on a spreadsheet. Everything works fine until some point that you feel something fishy is missing. Maybe the order details, or redundant orders and human validation errors. And you know at that time, you’re wasting your efforts and time again.

As you keep your determination, you’d probably use some online tools that help you up at first, some tools like Google Forms maybe? As it is free. But, it’s not that flexible, you can’t fully integrate it with your business. Something like inventory count, item management stuff like that, you want to consider them.

And you think, I probably need a website, to handle all this stuff. After hours of googling on the internet, you might discover pay and play solutions like Shopify. But the charges are insane for a small business like you. Then probably you stumble across WordPress with a plugin WooCommerce with added up premium themes from ThemeForest. A great deal, pick up the lowest cost hosting + domain and you’re done. Your website looking awesome with all the parallax effect with enhanced slider stuff.

Again… a few months later, all these things don’t help your business a lot. Your customer just hates to use your website because It’s really hard for them to fill up the forms just to buy a single product. You kinda trap with all the configuration, taxes, stock management. Just there’s too many of them and you just feel overwhelmed.

And, as you go, you’d feel that wishlist, commenting and other unrelated stuff unrelated to your business operation. You’re not a Steam store where all these things helped the customer a lot. Worse, these additional functionalities are making your website slower, pushing all the resources to the limit.

Disclaimer: I’m not saying WordPress and WooCommerce are bad. Even this website running on WordPress.

Then consider…

All the above is what I faced, except for the Google Forms part. If you’re facing the problems mentioned. You might wanna consider SwitchX. I built it myself above a framework called Laravel. You know, I’ve spent a lot of time learning Laravel, so there’s no need to be doubted.

So basically, SwitchX is developed based on “What’s important for the operation of small business”. So a small business operation isn’t that much.

You’ve your products ready.
You put the details on the website.
The customer fills up the order form.
You sent the item through PosLaju.
You update the status.
The customer read the status and check the PosLaju tracking.

It’s more than that, but I think you get it.

Details about the system are coming, click here for more the updates.

My public email: izzudinanuar96@gmail.com