As ngx-admin was a big project for us, we decided to put a bit more efforts and share our feelings about it. The idea to write a story reminded us a bit of that kinda documentary movie where actors are interviewed after a movie’s been released. We liked it though! Kinda superstar-ish.
Yet it is made just for you to enjoy reading and get motivated about what you do and never give up. So let’s get started!
“The process of making the framework and demo felt like a time of pregnancy, cause we carried it all the way through for nine months instead of five planned ones. The start time was January, 1.
Back in times when we made changes in ng2-admin our users faced the problem of updating. It led to numerous conflicts. We needed the core functionality to be less changeable which meant to separate it from the demo. It wasn’t that easy though!
Problems came on our way almost immediately. We had to figure out how to build TypeScript correctly, how to inline styles and templates, etc. We tried to peek at Google Material and other libs to see how they do it, but they all had custom solutions and no general approaches. We were left on our own and made it to successes in the end.
Builds & tests - here the time was brutally murdered.
We finished somehow the core after 4 months of massive work…
With the onset of spring, it was time for a demo. We wanted our second task demo to be as mind-blowing as the space of cosmos. I guess, our designer did not get the joke so he made it literary cosmic looking. We worked out carefully every aspect of the demo, so we postponed the release several times. In fact, we also rewrote loads of functionality in the core module while working on the demo.
We changed a number of resources all the way to the finish. Due to other projects we ran, we could not have the constant amount of people working exactly on Nebular and ngx-admin. We had 3, then 1, then 2 people working on the project.
Now when we can breathe freely, Akveo team is still so concerned about the troubles we have with responsiveness and scrolling on mobile versions, that we’ve come to the conclusion it’s better to have a mobile version than an optimized one. ngx-admin is still complicated. The newbie hardly can start running it freely. So we think that our next task is to write a couple of use-cases for you guys where you can get some useful tricks how to better use components, variables, write CSS and all.
Anyway, I think we did good!”
Our technical lead Dmitry followed Konstantin’s example and added some nice thoughts of his to the story. Dima is very dedicated to his work and takes every detail into account. So here it is:
“Indeed, having the first admin on hand, we realized that we needed to put core features into something independent, so that users could transparently update themselves without any terrible merges. More than that, we wanted to do not just a new core, but all sorts of cool things, such as multi-theming and general approach to managing application styles, without violating angular approaches (encapsulation of components).
As Konstantin said, there were long-term R&D, when we felt kinda desperate trying to find our way and get the point of doing everything in a right way.
The main features had been rebuilt from the scratch approx. 3 times before we realize that the result is good enough. Can you imagine our feelings and how persistent we were at that time? Ha-ha. Perhaps the problem was in the wrong design at the initial stage. Now it is difficult to tell exactly...
Somewhere in the middle of the process, the result slightly showed through. Our ideal goal was to cover all the routine tasks so that you could put a layout on the page, and a couple of components very quickly, redefine some of SCSS variables and just start working on the business logic with no hassle.
Six months had passed and we were ready to release the RC of the Nebular. Yet now it's clear that we'd been using waterfall with a huge half-of-a-year iteration instead of releasing the thing in smaller working pieces.
Nevertheless, even with the mistakes we made and what we've been through, what we have now is an excellent beginning for future changes and additions and new cool stuff. Peace!”
“It was our first experience of developing a full-fledged framework that would keep developers away from routine work. Nebular consists of modules Theme and Auth, which greatly simplify and accelerate the development of complex web applications. In the process of working on Nebular, a lot of "hidden tricks" were on the way and a number of probes were encountered, but they were solved due to the teamwork and excellent work together. It positively affected the quality of the final product.”
This is it. We opened our minds for you to kinda “sense” the backstage of the process of doing beautiful and useful things. Hope you enjoyed reading. Good luck!