Trending Feed

Shared a protip
on
pub.dev
Flutter
at

Nowadays you may see Flutter is getting more popular in mobile app development world. Flutter was released in 2017, two years after its closest competitor React Native, which launched in 2015. Flutter is the most popular cross-platform mobile framework used by global developers, according to a 2021 developer survey. Based on the survey, 42 percent of software developers used Flutter. But still you cant use flutter for all of your projects. So lets talk about that,

When not to use Flutter?
  1. Device & Platform - Wear OS version or a Smart TV app
  2. When your App size matters < 4MB
  3. Hardware Support - ( Connecting to RFID, Barcode scanners, Bluetooth Devices)
  4. Flutter for Web ( Though stable version is released )
  5. Instant Apps ( Again! Your app size matters )
  6. Platform Specific Look and Feel ( Material and Cupertino )
  7. Lack of 3rd party Integration ( Even it has 19K plugins, many are still unstable and need a to improve)

I have attached a blog ton details about the above point. Checkout the link to know more...

READ MORE
When not to use Flutter (smazee.com)
8 upvotes·3.3K views

If you need an IDE for dotnet on Mac or Linux, Rider is really the only way to go. I recently started a .NET personal project, and initially used VSCode for it, since it had served me so well before for so many other languages. After downloading Rider using my free student license, however, I can never go back. To any other aspiring devs reading this: if you're doing something other than webdev and you can get one for free, please use a full-fledged IDE for whatever you're doing. It might be heavy and it might take getting used to, but the refactorings and quick fixes are going to be invaluable once you start really getting in there.

READ MORE
4 upvotes·458 views
DevOps Engineer ·

I wanted something that would give me better quality of life enhancements than Bash could, however, I wanted something that was still generally posix compliant, unlike Fish.

The nice thing with Zsh is there's a huge amount of features hiding there, however. I'm a bit lazy so I use zinit and plugins to draw as much of the power of Zsh out as possible. This gets me close to how nice fish is, but ultimately, if you're just a lone developer working by yourself, fish is going to do you wonders. It offers so many features that can't be fully replicated in Zsh.

Bash on the other hand makes a ton of sense for anyone who wants to know that their shell is definitely POSIX compliant and any scripts they right will be compatible with anyone they share them with. These days you can get some more of the features from Fish and Zsh in Bash, but not enough for me to want to use it as my primary shell.

READ MORE
4 upvotes·1.6K views

2 major challenges for which JS comes as a handy tool, 1st its integration with AWS SDK was at par as Python and .net and the solution comes to hand with the reverse proxy solutions for the application to be running as an instance taking the situation of inside organization demography of resources expertise over the technology.

READ MORE
4 upvotes·3.3K views
Principal Software Engineer at Socotra·
Chose
Next.js

If you need to build a quick demo, or an internal tool, or even a landing page for your side hussle: NextJS is an awesome way to run a very lightweight CRM-like site of one or more pages, AND it also can provide flexible API endpoints for anyone familiar with modern JS, node, and/or express. I haven't used the Vercel deployment as-a-service very much, but that's there for hosting if you don't have a VPS/other Cloud at hand. Just add scripts under /pages or /pages/api and the magic happens--also, it's VERY easy to Dockerize. Read their excellent docs site, esp. re: next.config.js, which is SO much better than configuring Webpack (or whatever) yourself--even easier than react-scripts in my opinion. As an aside: TypeScript is supported but completely optional, and it's so painless to get started with one of Vercel's examples from their public repo. If you prefer Vue over React, check out NuxtJS (same idea)

READ MORE
4 upvotes·3.7K views

We choose those for any future Web- & Desktop Application development as we love what you can do with VueJS & Electron, but you're not let into a big "open" "do what you want" "no real help" jungle, I tested multiple other Frameworks, like Angular or React none really gave me the things I wanted, it also made Cross-platform Desktop Apps easier as we didn't had the time to invest time into (time consuming) native languages like C#. It makes a great tool for fast and still good looking Applications, that can run in a Desktop environment & in the WWW. It allows us to scale up easily and fits our requirements for the projects we create.

READ MORE
5 upvotes·3.9K views
Shared insights
on
Redux
Miro
at
()

Applying DDD, CQRS & ES (Domain-driven Design, Command Query Responsibility Segregation & Event Sourcing) have by far been the most important decisions we've made in terms of reducing complexity in our app.

We started simple, with an ORM, Active Record & Transaction Script. As time went on, we realized the core domain had heavy amounts of Reactive behavior and Invariants (when this happens, send and email, when that happens, do this to something else). The Anemic Domain Model (https://martinfowler.com/bliki/AnemicDomainModel.html) caused an explosion of cyclomatic complexity in our core domain command handlers, causing slow turnaround time to meet business needs.

We use DDD to build a shared ubiquitous language (https://martinfowler.com/bliki/UbiquitousLanguage.html) with domain experts on our Miro board. With this language in place, we apply Event Modeling (https://eventmodeling.org/) to design workflows, complete with wireframed UI's for our team to implement. This allows us to find our bounded context boundaries early before writing a single line of code, since we can see where all the data is flowing to and why.

We use CQRS (https://martinfowler.com/bliki/CQRS.html) to separate our command processing aggregates from our queries, as well as build a dimensional model asynchronously for analytical reporting.

We use Event Sourcing (https://martinfowler.com/eaaDev/EventSourcing.html) (Redux state container pattern) sparingly in our core aggregates with the most complex behaviour, but do not persist JSON event streams. Instead, we map from a relational structure to events, fold the events into current state to make new decisions, then persist events + current state back to relational writes. We ensure that the columns we map from are always immutable.

This removes the common versioning problems that exist with having to choose stream boundaries up-front, and allows us to have an immediately consistent queryable SQL tables of our source of truth.

READ MORE
5 upvotes·4.4K views
CTO, Head of Engineering at bimspot·

We are running complex and resource intensive pipelines and managing them with message brokers and custom code required too much maintenance and it also did not scale properly. Argo Workflows together with Argo Events takes care of all the orchestration problems so we can focus on the applications. By default it provides traceability, repeatability and scaling.

READ MORE
5 upvotes·5.2K views
Migrated
from
Electron
to
React Native

I think electron is great, don't get me wrong, but it's also bloated, slow, and you don't get a full native experience. You can do more with React Native because it is completely native, plus it's faster. You can also create desktop apps with it using react-native-macos, react-native-windows, or react-native-web and PWA or electron. You can even use native modules and components, which electron does not support.

READ MORE
12 upvotes·5.7K views
Software Engineer at SEKOIA·

The old static web page dynamically generated server-side using a monolithic server architecture is dying. Nowadays we're talking about client-side web applications (Single-Page App) powered worldwide on hundreds of CDN servers. Which make your web applications more reliable, cheaper to host but above all, much more secure.

READ MORE
Why I choose Next.js and Sanity for my new blog • Guy Dumais (guydumais.digital)
12 upvotes·6.5K views

The company needed to move from hosting all of our repositories, tickets & releases from a GForge instance hosted by our former parent company. The decision was made to move to GitHub Enterprise but the developers were not told until there was 1 month left to go. So needed something that could pull all of our information out and push it to the new hosts and it needed to be done ASAP.

READ MORE
7 upvotes·34.9K views

Stripe is very well known for its developer experience and great documentation. We considered Recurly and other tools because of the easy tax-automations and subscription handling.

But lately Stripe introduces its own tax-handling feature, and it was just a perfect match for our usecase. Also we are migrating some of our billing to a Pay-per-Use system, wich Stripe supports very well.

READ MORE
4 upvotes·31.8K views

React for me after learning Javascript was the most logical next step. Having understood its strengths and its possible weaknesses, I was able to get a grasp on how to utilize it in my own projects and in professional projects as well. Its component based style of getting data, manipulating it and rendering it is such a game changer in this industry. Coupled with npm, you can actually reuse most used components out there. Using it with redux, redux-saga, graphql made it even more efficient and complex in a great way.

READ MORE
7 upvotes·31.9K views
Senior Mobile Engineer at Homecoming·

We chose React Native over native Android and iOS development because of React Native's cross-platform capabilities. React Native has really matured over the years, developing a native feel, with simple and intuitive APIs. The community is also huge, filling in any gaps in the default APIs. These are also the reasons why we didn't choose other hybrid mobile tools. Largely, other hybrid mobile tools don't have the same mobile feel and close connection to the underlying mobile APIs.

At a larger scale, the control that native development offers beats React Native's simplicity. However, at this early stage, it's worth the trade-off. Maintaining two mobile teams and two mobile apps, as we iterate the product rapidly would not be practical. Plus, there is always the escape hatch of native modules if more control is needed.

READ MORE
5 upvotes·32.4K views

Event broker, services publish events onto the broker (events are stored in the streams/logs but can be processed by queues)

  • Licence (mozilla at the time of this)
  • Large community
  • Queues and stream support (as of 3.9)
  • Easy to setup
  • Shovel support between AMQP 1.0 and 0.9 brokers
  • Nice out of the box Admin UI
  • Great performance
READ MORE
5 upvotes·32.7K views

All the benefits of relational joins and constraints, with JSON field types in Postgres to allow for flexibility like mongo. Objection ORM makes query building seamless and abstracts away a lot of complexity of SQL queries.

MongoDB tends to get slow with scale and requires a lot of code to maintain consistency across collections as foreign keys and other constraints are harder to implement. PostgreSQL also has a vibrant community with battle tested stability and horizontal scalability when needed.

READ MORE
6 upvotes·38K views
CTO at Knowunity·

We use Terraform to provision all of our cloud infrastructure that is running on AWS. Due to its declarative syntax we know exactly what is running and can replicate parts of our infrastructure stack without much effort. Moreover, Terraform supports a big variety of providers. Therefore, we also manage other parts of our stack using Terraform such as our Elasticsearch deployment that is running on Elastic Cloud.

READ MORE
4 upvotes·36.8K views
Senior frontend developer ·

Needed to transform intranet desktop application to the web-based one, as mid-term project. My choice was to use Django/Angular stack - Django since it, in conjunction with Python, enabled rapid development, an Angular since it was stable and enterprise-level framework. Deadlines were somewhat tight since the project to migrate was being developed for several years and had a lot of domain knowledge integrated into it. Definitely was good decision, since deadlines was manageable, juniors were able to enter the project very quickly and we were able to continuously deploy very well.

READ MORE
6 upvotes·38.5K views
Needs advice
on
Java
and
Common Lisp

Hello everyone! I’m interested in learning AI development, and after doing a little bit of research, I’ve learned that Common Lisp and Java are the top languages for AI. Which one should I learn? What are the differences? Are they hard to learn? If anyone can help with this, it’d be very appreciated. Thank you!

READ MORE
8 upvotes·42.5K views
Replies (4)
CEO, lead developer at Localazy·
Recommends
Java

Java is far more popular and you can use other JVM-based languages such as Kotlin (I would recommend Kotlin over Java). Also, for Java, there are many more libraries, tools, etc. Also, if you learn Java, you can do almost anything - mobile (Android), web, and desktop apps - without "hacks". There is native support for all of these.

As with any programming language, it's not hard to learn the syntax but it's hard to understand the ecosystem, know libraries, best practices, etc. From that point of view, I would also prefer java - more tools, more libraries, more resources, guides, how-tos, etc.

READ MORE
5 upvotes·41.3K views
Recommends
Python

I'd recommend Python due to the fact that many AI libraries and frameworks are specifically developed for the Python ecosystem.

Java is good for general purpose programming: Web, Mobile and Desktop, however doesn't really have many native libraries supporting AI Development.

As for LISP, again it has some support,, however Python seems to be the leading edge in AI development

READ MORE
4 upvotes·9.1K views
View all (4)
Needs advice
on
Vue.js
Svelte
and
React

I know this is a fairly common question, but I feel like this stuff is pretty dynamic, and things fall in/out of fashion over time.

So here it is: I am an aspiring front-end web developer (eventually full stack, but focused on front-end for the time being). I feel pretty comfortable with HTML5, CSS/Sass, and I know enough JavaScript to get by.

I am an adult student doing the self-teaching route, and while my grasp on vanilla JS isn't stellar, I feel like it would be a good idea to start incorporating a framework into my learning. I just have no idea which to choose. To be honest, Svelte looks the best to me, BUT I am looking to be marketable in the future, so it's probably best to start with a more popular framework.

React seems to be the obvious answer popularity-wise, but I want to hear updated opinions from people in the field. While I haven't completely defined my focus, I like creating UI's and really have fun with CSS/Sass.

Thanks in advance, and I hope you're all having a great and safe weekend.

READ MORE
7 upvotes·41.1K views
Replies (5)

I am glad you like Svelte! and I am glad you didn't listed Angular.

I would go with my point of view, if you're considerably new to javascript, I would consider to focus on sharpening those skills. You will need them in order to build anything with those 3 options. You may be surprised how important is to get into the market, so, I would recommend 2 options: * Vue.js has a lot of acceptance nowadays, it's robust enough and ecosystem grows and thrives. Also I consider by my own experience the simplest to learn. Nonetheless, in my experience I don't see vue thriving as much as react. * React.js is the most popular, the one that would probably teach you best javascript and probably for. new learners the least simple to learn. However, once you get it, you would never look back and wonder why you took the decision. React.js is not going anywhere, it would be the option to choose for quite long time. Has wide market acceptance and ecosystem is fantastic.

You could always learn them at the same time tho! It's really up to you! Have fun

READ MORE
6 upvotes·40.7K views
Recommends
React

While it's hard to recommend any framework/library, I'd recommend you start with something that is relatively popular and has a little more maturity. I recommend react because it is arguably the most popular out of the three, so you'll easily find support, and most importantly, a job with this. Vue is a good second option, and also great to learn. To my knowledge, it was actually created by some of the original devs of React. Not sure if that's actually true or not. On to Svelte. This one is actually really great, and I love the approach they took with doing all of the "dirty work" at compile-time. The problem is that it's relatively new, not as mature, and while you're never guaranteed to find a job with any language/framework, your chances are considerably less.

All of this being said, while I do recommend what to start with, just to get yourself into the industry. My personal recommendation for your future career, and just for fun, is to learn them all.

READ MORE
6 upvotes·1 comment·38.2K views
patrickonparker
patrickonparker
·
September 2nd 2021 at 1:16PM

I started with Vue/Nuxt before I had strong general JS skills. I was forced to learn React for a project and it wasn't hard to pick up after learning Vue. Once you learn one of the major frameworks, you can transfer those skills to the others without too much effort. They're all doing basically the same thing (they're all essentially MVC component libraries) but with different conventions.

React is the most popular right now, despite having the worst DX of the three. For a newcomer, my recommendation would be to either 1) focus on React/Next, and push through the higher learning curve or 2) start with something more comfortable like Vue/Nuxt or Svelte/SvelteKit, then learn React/Next to be more marketable. It won't hurt you to have another library/framework in the skills section of your resume.

This is most important: as a newcomer, whatever library you choose, start with the framework. For Vue, start with Nuxt. For React, start with Next, etc. For me, it was MUCH easier to learn Vue using Nuxt and single file components than it would have been to learn the Vue library by itself.

·
Reply
View all (5)
Chose
R Language
over
SAS

R is flexible, extensible, and free. It permits one to follow software engineering best practices in developing data analysis code. Rich selection of community-contributed libraries and much less verbose than SAS. Excellent graphics capabilities out of the box before you even install shiny and ggplot2. The rio package unifies and simplifies import of most common file types improving the portability and reusability of R scripts.

READ MORE
3 upvotes·36.7K views

Fluentd offers true log streaming rather than log batch processing. Its technically possible for logs to get lost with logstash and we didn't like that idea. Fluentd offers a better cloudnative experience with the expectation of failure whereas logstash is better for infrastructures that don't have the expectation of failure.

READ MORE
4 upvotes·36.8K views
Founder & CEO at Moducate·

At Moducate, for backend and systems engineering we typically use Rust or Go. So, it made perfect sense for us to use TypeScript over JavaScript for our frontend web development.

TypeScript's static typing provides a good level of protection against runtime errors (as any statically typed language does), and typings have drastically improved our codebase's readability by allowing us to write self-documenting code.

"Better IDE Support" is a benefit of TypeScript that is typically thrown around, but, admittedly, most IDEs (we use all things JetBrains!) now have excellent support for JavaScript as well.

Next.js, our web framework of choice, has out-of-the-box for TypeScript, which was a huge factor in our adoption decision.

We're using Prisma for our MongoDB ORM; its schema-first design principle offers a rapid development workflow by removing the need for us to create swathes of bulky boilerplate code. As for Prisma's full typed client, I'll refer back to my earlier paragraph on TypeScript's protection from runtime errors! 😊

READ MORE
6 upvotes·38K views
Software Engineer at Parrot Software, Inc.·

Do you have a K8s cluster and you want to deploy some services to it? Gitlab Auto Devops is key to achieve this without breaking a sweat.

We deploy Go services to our K8S clusters with warp speed thanks to Gitlab and it's Auto Devops pipeline.

I haven't seen tooling like this in any other git cloud provider.

READ MORE
7 upvotes·48.7K views