DEV Community

I'm a fullstack web developer in ecommerce, Ask Me Anything!

Kai Neuwerth on August 15, 2018

I started my training back in 2009, finished it in 2012 working in a company that had a LAMPP-stack CMS as product with many modules for different ...
Collapse
 
metruzanca profile image
Samuele Zanca

Got any tips for someone wanting to start a business that will likely have him making a few e-commerce sites?
If that's a bit too vague/general for you, I'm planning to make my e-commerce sites pwa based with probably a framework that uses reactjs. Do you have any experience making pwa e-commerce sites? Got any tips or common pill falls?

Collapse
 
crease29 profile image
Kai Neuwerth

Hi Samuele, unfortunately I've missed the trend with PWA e-commerce sites and I'm now working in the games industry. But I've heard that Vue Storefront is very powerful.

Collapse
 
metruzanca profile image
Samuele Zanca

Oh, I've been looking for a reason to learn Vue. I'll have to check that out.
Thanks Kai ❤️

Collapse
 
anurbol profile image
Nurbol Alpysbayev

What are the hottest techs you use?

Collapse
 
crease29 profile image
Kai Neuwerth

Depends on what you find "hot" ;) From my point of view I find the following technologies very interesting:

  • ReactJS
  • VueJS
  • Symfony 4
  • Elasticsearch
  • Redis (as session storage and model cache)
  • Spryker (Very powerful ecommerce framework)
  • Automization with GitLab system hooks. They can save a lot of recurring work!

And last but not least: Docker. I've built a custom setup for our developers that is installed in each of our customer projects and learned so much from it.

GitHub logo eTribes-Connect-GmbH / docker-setup

🐳 Docker setup by Etribes for almost every PHP based web application that needs a webserver and database.

Docker setup by Etribes

This docker setup was intended to be used with Shopware but as it is that generic you could run almost every PHP based web application that needs a webserver and database.

Feel free to contribute.

Important information: This setup is for local programing purposes only! It should not be used in a production environment.

Installation instructions

Getting started

  1. Set a host entry in your local hosts file to 127.0.0.1 dev.local
  2. Navigate to your projects root
  3. Execute git clone https://github.com/eTribes-Connect-GmbH/docker-setup.git
  4. Navigate to the created folder with cd docker-setup/
  5. Adjust the shopware release url in docker-compose.yml
  6. Execute docker-compose pull to get the newest images
  7. Change FULL_WIPE_ON_REBOOT in docker-compose.yml to "false" if you dont need the installation wizard.
  8. Change the environment variable COMPOSE_PROJECT_NAME=project in .env
  9. Execute docker-compose up
  10. If needed run your setup and change FULL_WIPE_ON_REBOOT in docker-compose.yml to "true" afterwards. Alternatively you can just import an SQL dump.

The goal was to have a fast local development environment. It should be quick and easy to switch the project and we wanted to switch from Vagrant to Docker.
Now over 15 developers work with it on a daily basis. That makes me proud! :)

Collapse
 
anurbol profile image
Nurbol Alpysbayev • Edited

Thank you, Kai Neuwerth! Or Danke schon ;) I suggest you to move to full-js stack away from PHP. I used PHP for 12 years though, but it is dying comparing to js techs. IMHO

Thread Thread
 
crease29 profile image
Kai Neuwerth

Kein Problem! ;)

[...] but PHP is dying comparing to js techs.

I've heard that quite often and the discussions were interesting. Could you please share why you think so?

Thread Thread
 
anurbol profile image
Nurbol Alpysbayev • Edited

Of course! In fact I have several reasons.

  1. Types.
    If you are going to make a really complex app or library, where you risk to go out of your mental/brain/memory capacity because you have to keep so many things in your head, then you will come to an opinion that you should use strong type system. I liked PHP's type system, classes and stuff, but it is very, very far from completeness. JS has Typescript, which is just a superset of JS. Typescript has almost complete (in practical terms) type system and developing (and what much more important, maintaining) very big things is mere fun (not a pain like in PHP).

  2. Slow development. github.com/phpDocumentor/phpDocume... look at this issue. It was created in 2012. This is simple to solve issue and is frequently requested, yet no any progress is done. Or PHP core versions. PHP 7 was like christmas, it improved type system. But at the same time, PHP core team voted to cut many type-related and other useful things.
    I think I know why it is this way. I believe PHP today has no remarkable leaders, who pushes the language and creates modern stuff. And the next reason is kinda linked to this.

  3. What languages do industry giants use, support and push?
    Microsoft: typescript (superset of JS)
    Google: typescript (in angular), dart (fancy JS)
    Facebook: flow (superset of JS), JS (in ReactJS)
    You may add to the list, and you will probably see with your own eyes that no one really supports/pushes PHP, they just trying to somehow modernize their legacy PHP code (e.g. HHVM of Facebook)

I refused to see the truth for many years and continued using PHP but finally realised the truth: it is really dying.

Thread Thread
 
crease29 profile image
Kai Neuwerth

Thanks for sharing and taking the time to write this comment!
I think it's not necessary to get in on it because this would tend to become an endless discussion :D But I get your points and there are obviously valid arguments.

Let's just see where it goes to and where we go to. It's never bad to learn some other languages, teach yourself new technologies and maybe find your next programming language :)

Cheers, Nurbol!

Thread Thread
 
anurbol profile image
Nurbol Alpysbayev • Edited

"I think it's not necessary to get in on it because this would tend to become an endless discussion" - that's a wise decision :)

BTW, after writing the previous comment I thought a bit, that there can be far more developed ecosystem for Ecommerce in PHP than in JS/TS. Because, well Ecommerce is pretty developed/old industry.

Good luck!

Collapse
 
alchermd profile image
John Alcher

Common problems that you face within the domain of eCommerce?

Collapse
 
crease29 profile image
Kai Neuwerth

Many edge cases like different tax laws in all countries, the missing (technical) knowledge of shop owners, sync of data to many third parties (and what if their services are down?), scaling of the infrastructure when our customers run TV ads and there is high load on the shop for a short amount of time.

Collapse
 
hatem20 profile image
Hatem Said

since you have experience in e-commerce and Symfony, have you tried sylius?
and if so could you please share your opinion about it?
if not what platform do you prefer?

Collapse
 
crease29 profile image
Kai Neuwerth • Edited

I haven't tried sylius yet but of course heard of it. It seems to have the same approach as Spryker (splitting all core from frontend and administration, api as single point of truth, and so on).

I have tried OXID eShop, Shopware, xt:Commerce and WooCommerce so far.
From these I would always prefer Shopware.
On one of my next projects I'll dive deeper into Spryker and I'm really looking forward to work with it!

Collapse
 
pauleke20 profile image
Paul Eke

Hi, I'm a beginner developer, I'm trying to use shopware as the backend for vue storefront but I can't seem to get the API keys since I'm running it locally.

Collapse
 
vitalijalbu profile image
vit

Hi, need to decide which open source ecommerce will fit my marketplace project (i want the frontend in react)

Collapse
 
vitalijalbu profile image
vit

How hard from 1 to 10 is to create a module for shopware?