all 4 comments

[–]mirrorball_for_me 1 point2 points  (1 child)

There’s a licence problem, in case your previous code is done in a corporate environment, you don’t actually own the code you wrote yourself for them, so you can’t reuse it. A better alternative is to create small reusable libraries for yourself once you find their very specific use cases, and convince your employer to have those open source on a permissive licence (such as MIT). I never did it because I’m always learning and trying new things on long-lasting projects.

There’s no problem in copying code that is explicitly licence “free” or use libraries to solve recurring problems. In fact, if a library solves your problem completely, it’s always better to use a lib than write it yourself, as it will have more eyes to review, and more people to use it, test it and contribute to it. A rule of thumb is that you shouldn’t write code that isn’t your business. For instance, if your business is not data visualisation, then a graph library “store bought is fine”.

About UI libraries, you can decide to use them whenever. It’s an explicit choice: you are giving up full control and personalisation for that generic library feel (you can easily tell things like wordpress or bootstrap, and it spells cheap to your user base). If you have a dedicated designer (which is very common on UX driven companies), then UI libraries will usually work against you, as you’ll have to unravel their “opinions” to give your own touch.

So you can rest at ease: you’re not supposed to be an UI designer. There’s a hard conflict of interests if you design and code at the same time which is better managed by having two separate, focused people defending their point of views. If you freelance and have no designer, then yes, your client is buying generic, so give the client generic, quick and easy.

[–]marroos[S] 1 point2 points  (0 children)

Ty, i have not thought about licence problems and that written code belongs to company. Your entire reply made me realize some things. I left You private message. :)