Trending Feed

I wanted to develop a student app that possibly could be used by many teams (students from other schools)

I chose Ionic, because:

  • single codebase: previously, we used React Native for Android and Angular for web/PWA, which was troublesome

  • portability: runs on PWA (which is important, because iOS license is too expensive for school app), web, Android iOS (+ others, if needed)

  • full use of web technologies: Next.js, Tailwind, React in this example (in oppose to Flutter/Java/Kotlin)

  • stability and maintainability: low-entry level due to basic web technologies without new syntax (in oppose to React Native and Flutter), web is really stable and won't lose support (which doesn't have to be true with Flutter/Dart)

READ MORE
7 upvotes·3.2K views
CEO at Scrayos UG (haftungsbeschränkt)·

We've already been monitoring Agones for a few years now, but we only adapted Kubernetes in mid 2021, so we could never use it until then. Transitioning to Kubernetes has overall been a blast. There's definitely a steep learning curve associated with it, but for us, it was certainly worth it. And Agones plays definitely a part in it.

We previously scheduled our game servers with Docker Compose and Docker Swarm, but that always felt a little brittle and like a really "manual" process, even though everything was already dockerized. For matchmaking, we didn't have any solution yet.

After we did tons of local testing, we deployed our first production-ready Kubernetes cluster with #kubespray and deployed Agones (with Helm) on it. The installation was very easy and the official chart had just the right amount of knobs for us!

The aspect, that we were the most stunned about, is how seamless Agones integrates into the Kubernetes infrastructure. It reuses existing mechanisms like the Health Pings and extends them with more resource states and other properties that are unique to game servers. But you're still free to use it however you like: One GameServer per Game-Session, one GameServer for multiple Game-Sessions (in parallel or reusing existing servers), custom allocation mechanisms, webhook-based scaling, ... we didn't run into any dead ends yet.

One thing, that I was a little worried about in the beginning, was the SDK integration, as there was no official one for Minecraft/Java. And the two available inofficial ones didn't satisfy our requirements for the SDK. Therefore, we went and developed our own SDK and ... it was super easy! Agones does publish their Protobuf files and so we could generate the stubs with #Protoc. The existing documentation regarding Client-SDKs from Agones was a great help in writing our own documentation for the interface methods.

And they even have excellent tooling for testing your own SDK implementations. With the use of Testcontainers we could just spin up the local SDK testing image for each of the integration tests and could confirm that our SDK is working fine. We discovered a very small inconsistency for one of the interface methods, submitted an issue and a corresponding PR and it was merged within less than 24 hours.

We've now been using Agones for a few months and it has proven to be very reliable, easy to manage and just a great tool in general.

READ MORE
6 upvotes·2.2K views
Lead Developer at Di-Vision Consultion·
Chose
Node.jsNode.js
over
PythonPython

We picked Node.js over Python for simple AWS Lambda functions. The team had experience in javascript, it is easy to read and inline editable. It appears to be a bit more similiar to C#.

We write complex AWS Lambda functions in C# with our own packages and lots of logic. This is for small 1-page scripts to run simple forwarding or administrative tasks in which we can directly see what the code is and does.

READ MORE
4 upvotes·3.2K views
Brand Director at NCINTEV·

I’m well aware of the hate that php receives and some of it is well warranted. But the ease of implementation for so many features that I find myself needed on a daily basis is head and shoulders above what I could achieve with JavaScript on my backend. I can do more without the need of frameworks but I still have many options if I want that. Especially with database handling I find many of the complainants about php to be pure rhetoric.

READ MORE
8 upvotes·1 comment·4.8K views
blacknight-rh
blacknight-rh
·
January 26th 2022 at 9:24AM

after all, PHP is still a tool that may be useful and handy to handle some scenarios, I believe it's ok to use it even the hate speech against it just in case it solves a problem for you or provides an easy implementation.

·
Reply
Needs advice
on
Spring BootSpring Boot
and
ASP.NET CoreASP.NET Core

I am thinking about moving to back-end development. Help me with choosing between Spring Boot/ASP.NET Core, which is better? which is faster or which is more popular? and what's the difference between these frameworks besides the language. I know C# (not .NET) Kotlin, and Java equally and I don't have a problem with any of these languages

READ MORE
5 upvotes·4.8K views
Replies (3)
Recommends
ASP.NET Core

ASP.NET definitely, because .NET is faster than Java, Go, Python, C++ and is even 10x faster than Node.js. It beats all these famous backend frameworks like Spring Boot, Node.js, Laravel, Django, etc, by a large margin. You can see the performance benchmarks here: https://www.techempower.com/benchmarks/, ASP.NET Core is in 36th place, while Spring is in 317th place. Another one here by the .NET team: https://miro.medium.com/max/1400/1*mKgQoOIRcTZ1OMjLQ2gENA.png

READ MORE
8 upvotes·4.1K views
Software Developer at CGI Federal·
Recommends
Spring Boot

Spring Boot is an opinionated framework. This is meant to say, the framework makes a number of assumptions about the User's needs and intentions and acts accordingly. The reason that Spring Boot exists and is opinionated is due to complexity creep. The Spring Framework (without the "Boot") was originally designed to simplify deployment of Java web services, but as the Framework grew in the number of capabilities and implementations, it ceased being as simple to implement. Spring Boot is the remedy, re-simplifying the whole process until so much happens automagically that it can be a little baffling. (I've never used ASP.NET, so I don't have an opinion on it. However, I didn't want to offer some insight into Spring vs. Spring Boot.)

READ MORE
7 upvotes·1 comment·4.7K views
blacknight-rh
blacknight-rh
·
January 26th 2022 at 9:44AM

As complementation to @Eric 's comment and as I am working with C#/.Net core for my full-time job, I can tell that:

before the .net core versions, it was painful to work with ASP.Net as it was closed to only Microsoft stack (e.g. use visual studio/windows machine, you may be tightened to use Entity framework, etc...), which was a great advantage in favor of JAVA, However after releasing the Core series, it became much easier and convenient to use .Net core for your applications as it will run it into any machine (just like java) and you are not enforced anymore to develop your application using visual studio, you can write your code on window/Linux/Mac machine or whatever you want as long as you have .Net running on it also your deployment being not coupled to windows server anymore + .Net 6 execution is pleasing fast.

I believe you should give it a shot to use .Net even in a POC application

·
Reply
View all (3)
Software Developer ·
Needs advice
on
Tailwind CSSTailwind CSSStrapiStrapi
and
ReactReact

I want to create a landing page for a company that showcases their products, I don't want to take the website builder approach, would rather implement it myself. I haven't gotten the full requirement as yet but it needs HeadlessCMS support. I'm more comfortable using React but I'm open to other frameworks. Also if I'm missing anything would really appreciate it if you let me know

READ MORE
6 upvotes·6.9K views
Replies (3)

With React, Managing the files and creating the website becomes very easy. It can be easily connected to Strapi API Using packages like Apollo client or even useState/Use effect hook. Strapi dashboard is super simple and the Api is so easy to use. Tailwind You can style things easily by adding classnames. Also Tailwind VS Code Plugin (TailwindCSS Intellisense) gives you the classes while typing in the class attribute.

READ MORE
4 upvotes·4.4K views
View all (3)
Senior Software Developer at Shyplite·

So, we started using foundationDB for an OLAP system although the inbuilt tools for some core things like aggregation and filtering were negligible, with the high through put of the DB, we were able to handle it on the application. The system has been running pretty well for the past 6 months, although the data load isn’t very high yet, the performance is fairly promising

READ MORE
5 upvotes·1 comment·10K views
Amirouche B.
Amirouche B.
·
January 25th 2022 at 5:41AM

You use FoundationDB for an OLAP system, that is surprising, I would love to know more about your experience!

·
Reply
Needs advice
on
Amazon RDSAmazon RDS
and
Amazon EC2Amazon EC2

Hi, here's how the story goes.

We started transforming a monolith, single-machine, e-commerce application (Apache/PHP) to cloud infrastructure. Obviously, the application and the database (MySQL) were on the same machine.

We decided to move to AWS. And as the first step of transformation, we decided to split the database and application. Hosting application on a c4.xlarge machine. And hosting database to RDS Aurora MySQL on a db.r5.large machine, with default options.

This setup performed well. Especially the database performance went up high.

Unfortunately, when the traffic spiked up, we started experiencing long response times. Looked like RDS, although being really fast for executing queries, wasn't returning results fast enough over the network to the Amazon EC2 machine.

So that was our conclusion after an in-depth analysis of the setup including Apache/MySQL/PHP tuning parameters. The delayed response time was definitely due to the network latency between EC2 and RDS/Aurora machine, both machines being in the same region.

Before adding additional resources (ex: ElastiCache etc) we'd first like to look into any default configuration we can play around to solve this problem.

What do you think we missed there?

READ MORE
5 upvotes·6.1K views
Replies (4)
DevOps | Senior Developer ·

If you are using the Aurora Serverless option and not enough initial compute capacity, it could be in a position where it is always scaling up and down and causing you latency issues. I dealt with a client and our solution was to move away from serverless to an EC2 based implementation with fixed resources adequate enough to handle the load needed.

READ MORE
4 upvotes·4.6K views
Founder at Circlical·

I've handled absolutely incredible burst traffic with RDS/EC2. I have two questions:

  1. Have you enabled the RDS slow and index-less query logs to spot problematic queries in your design?

2.1 Are your RDS and EC2 instances in the same availability zone?

2.2 In the same VPC?

READ MORE
3 upvotes·3 comments·4.8K views
dleblanc-vidcruiter
dleblanc-vidcruiter
·
January 19th 2022 at 3:25PM

If you're convinced it's network related points 2.1 and 2.2 here are crucial, for optimal performance you MUST have your ec2 instance and your RDS instance in the same VPC connecting over internal connections.

·
Reply
Asif Kolachi
Asif Kolachi
·
January 21st 2022 at 10:45AM

Hi Dleblanc. Yes, they're in the same VPC. But internal connection is something I don't know. Do you mean AWS PrivateLink? RDS security group is already configured to block outside traffic except the EC2. The RDS endpoint I am using is the one provided in RDS console. That DNS based hostname. That's why I think connection isn't private and local. Can you please suggest me more to read about the internal connection?

·
Reply
Asif Kolachi
Asif Kolachi
·
January 21st 2022 at 10:40AM

Thanks Alexandre. Yes for all these points. This difference in latency is more prominent in small queries when run in a big number. I know I can optimize for a better alternative query approach, but question here is the network latency.

·
Reply
View all (4)
Founder at Impulz Technologies·

As a startup, managing my own database, backups and even the schemas/migrations are all overhead. Next to that, I needed both Backend and Frontend ways to write to the database. With firebase this is possible, this saved us some time: Some API calls were not needed because I could directly fetch data in the FE.

Offline support & realtime data updates is also supported out of the box. No need to write your own websockets.

Once the startup grows, moving to a different relational database might make sense. But in a pre-product-market-fit startup, Firebase is a good, and cheaper fit!

The pricing model of firebase firestore is a bit risky. But it saves a lot of time to get quickly to market.

READ MORE
12 upvotes·15.1K views
Needs advice
on
SwiftSwiftPythonPython
and
FlutterFlutter

Hello, I am still a student and would like to ask a question. Currently, I am developing in mobile development with Flutter in the frontend and Python in the backend part. Right now I have to make a choice about developing a mobile app or developing a backend to progress more professionally. My questions are as follows:

1) If I prefer the mobile application area, will I only work with the Ui/Ux developer with the front-end and code the designs in Swift Kotlin languages, am I responsible for the back-end software?

2) I have a product that generates new ideas so I like to control the development and work there because the backend is the brain, but are they independent from each other in the backend mobile application? Is the mobile app developer responsible for the backend software?

3) I don't like graphic design because I don't like it if it's not perfect and I get stressed. Am I responsible for the graphic design in the mobile app?

4) Is a mobile app developer also a backend developer?

I know these are very simple questions, but they are very important to me. Thanks for your answers.

READ MORE
7 upvotes·10.4K views
Replies (3)
Software Developer at Empirica Consultores·

Hi Hüseyin! 1-2) In my experience If you are a Mobile Applications Developer you will have the following responsabilities: - Develop (not designing) both functionality and screens of the app you are working - Consume (not develop) third party or self company owned APIs or Backend services - Distribution tasks. - Mantainance tasks. Now, there will always be companies wishing you know the whole thing (ui/ux, backend, frontend, mobile, cd/ci, data science, etc.). And of course it will be helpful for you to know a little bit of the stuff around mobile development, but it's not very common since it's not part of the responsabilities of a mobile app dev.

3) No, you are not responsable for the designs of your application, that's why companies have Product designers, ux designers, ui designers for preparing the screens, logos, color palettes, etc for products. As a developer your job is to see and examine the designs and take them from Figma, InVision, Zeplin, etc to the Code editor.

4) This is the thing, if you are working as a Mobile Developer you might know about Mobile development, not backend, not frontend, not ui ux. BUT if you know a little about backend that might be helpful although backend should not be your responsability.

I hope this makes sense to you. Cheers!

READ MORE
5 upvotes·9.5K views
Senior iOS Developer at Grailed·
Recommends
Xcode
Swift

As a mobile developer, I'm usually a member of a larger team and it's usually another person's responsibility to develop the backend/API, and another person's to do the UX/design. Very very few teams use cross-platform tools like Flutter or React Native, because tools like those tend to make mediocre apps that scale poorly and are impossible to debug, so make sure to get familiar with Swift/iOS or Kotlin/Android (or both).

READ MORE
3 upvotes·5.4K views
View all (3)
Technical Architect at ERP Studio·
Needs advice
on
MongoDBMongoDB
and
Amazon DynamoDBAmazon DynamoDB

We are developing a system in which we have to collect 10 Million records every day. We need a database solution, NoSQL. data is simple logs. We are using AWS for now. I want to know the cheaper solution from both available techs. Amazon S3 or MongoDB.

We have 30 Tables that are collecting these logs.

READ MORE
6 upvotes·12.6K views
Replies (3)
Director - NGO "Informational Culture" / Ambassador - OKFN Russia at Infoculture·

I am a big fan of MongoDB and It's great for document storage but I am not really sure that it's the best engine for log storage. If data that you store is "flat" and well-defined than log storage based on engines like Clickhouse or Elasticsearch stach could be much more efficient. Also it's quite important how you reuse collected logs. Do you calculate aggregated metrics? Do you need full search ? And so on.

If logs are really simple and full text search needed than Logstash + Elasticsearch. If you need to calculate a lot of metrics and logs are not just text, but include numbers/values needed for aggregation than Clickhouse.

READ MORE
5 upvotes·11.2K views
Developer ·

The way I'd approach this is to carry out a survey. Prioritise a list of important criteria, such as performance, functionality, and cost. For example with MongoDB you can archive documents if the data not immediately required to save on costs at the expense of instant access, but if that fits your use case model then you can use that feature. So create a use case test project that actually uses both services as per your use case and see for yourself the results of the tests. Along the way you'll encounter issues perculiar to each platform that you can factor into your final decision, such as comparing how easy it is to use their API, or that the documentation is sparce or confusing. From there you'll have an informed decision and you'll be confident investing further resources into it.

READ MORE
5 upvotes·1 comment·12.5K views
reidmorrison
reidmorrison
·
January 9th 2022 at 5:20PM

If you use Amazon DocumentDB instead of DynamoDB, it is compatible with the MongoDB API. That will keep your code cloud agnostic and you have option of switching between DynamoDB and MongoDB in the future based on whichever ends up being cheapest to run.

·
Reply
View all (3)
Backend Developer at Famcare·

When we first lunch Famcare we needed overcome scalability issues by implementing a serverless application, as we believe in Laravel framework and its capability, we struggled to have a maintainable app in AWS lambda as it does not support php runtime by default so we decided to use Laravel Vapor to manage our AWS stack and deployment.

READ MORE
4 upvotes·13K views
Software Development Engineer at Stier Solution Private Limited·

Easy to start, lightweight and open source.

When I started with PHP, MySQL was everywhere so this is how I started with it. I am no expert in databases but I started learning joins, stored procedures, triggers, etc. with MySQL.

Recently used it in one of my projects - Picfam.com with Node.js + Express backend

READ MORE
8 upvotes·18.3K views
Needs advice
on
ReactReactJavaScriptJavaScript
and
CSS 3CSS 3

Hi, I learned some skills like HTML & CSS and JavaScript. Now I am learning React but sometimes I feel that I'm not good enough in the skills that I learned before although I make projects by any skills I learned. Every moment I feel that I need to be perfect and I know it's a wrong feel. Now I try to know How can I determine that I have the basis of any skills that I learn I mean that When can I move from learning completing tutorials to learning according to my requirement.

READ MORE
16 upvotes·20.2K views
Replies (4)

I admire your hard work for learning new technologies, but I would definitely recommend you to go out there, find internships and then learn by doing. There is not too much you can learn just from the tutorials, there are other important factors that you need to be a good programmer, you need to communicate, and do projects according to the liking of the client/project manager.

I would say it again, go out there and find internships to gain experience.

READ MORE
10 upvotes·3 comments·20.1K views
Dasari Priyanka
Dasari Priyanka
·
December 27th 2021 at 12:53PM

Nice article with the most useful Information.

https://www.gologica.com/course/html5-css3/

https://www.gologica.com/course/word-press/

·
Reply
rjp 777
rjp 777
·
December 29th 2021 at 12:19PM

very helpfull

·
Reply
Jimi Knight
Jimi Knight
·
January 14th 2022 at 4:11PM

This is how I feel, your advice hits the nail on the head. Thanks

·
Reply

Build a relatively more complicated project. Probably a solution for a problem you might facing rn. Take a few months to build it. Get yourself stuck in the bugs. Try to get outta that bugs. Don't worry about that imperfect feelings. Even senior devs go to Stackoverflow to seek help. And most importantly, finish the project, and don't give it up in the middle of the journey.

READ MORE
8 upvotes·1 comment·16.8K views
Ido Segev
Ido Segev
·
January 6th 2022 at 10:27AM

a Great answer!

·
Reply
View all (4)
FLO HEALTH, INC.·

Scala was chosen for implementing mission-critical services and applications: Some were built from scratch, some during system evolution. As a fully object-oriented, multi-paradigm language with powerful extensions, Scala is now being used for building web services or web applications, streaming services, constructing data pipelines with ETL jobs, and a variety of utilities.

Scala has helped us to reinforce the backend of the Flo application in order to handle a rapidly increasing volume of users and process a massive amount of data every day. Depending on domain and application features, we organize and develop our backend using both Scala and Python. The current architecture consists of microservices built within health, community, commercial, communication, and other domains. Most of them have a reactive nature, with event-driven design. Each month, more than 43 million users access the app, and the core services manage more than 1,200 queries per second per single service instance — and here’s where the power of Scala helps us make it real and serve high-load — and sometimes high pressure — API requests very quickly and without errors.

With the help of Scala’s strict type system, seamless interoperability with Java and JVM runtime, and a huge world of libraries and tools, we’re ready to quickly start the development of new services or update existing ones with minimal errors and high-quality results. Scala lang has strong debugging and monitoring tools that help mitigate any code issues during development. The JVM platform has a vast number of required libraries while the Scala community provides more efficient and native implementation, so we’re reinforced by both worlds.

At the same time, JVM languages have evolved in different directions. If you want to more easily and reliably perform routine tasks, Scala may open up previously unknown horizons for you to conquer and explore. It’s a really scalable language. In turn, it helps develop your engineering skills, and this in itself makes it worthwhile to learn.

READ MORE
5 upvotes·2.7K views

It’s pretty common when you read a success story about migrating from a monolith to microservices to see that people have a clear idea of what they already have; what they want to attain overall; that they have looked at all the pros and cons; and out of the plethora of available candidates, they chose Kubernetes. They have been faced with insurmountable problems, and with an unbelievable superhuman effort they resolved these issues and finally found the kind of happy resolution that happens “a year and a half into production.”

Was that how it was for us? Definitely not.

We didn’t spend a lot of time considering the idea of migrating to microservices like that. One day we just decided “why not give it a try?” There was no need to choose from the orchestrators at that point: Most of the dinosaurs were already on their last legs, except for Nomad, which was still showing some signs of life. Kubernetes became the de facto standard, and I had experience working with it. So we decided to pluck up our courage and try to run something non-critical in Kubernetes.

Considering that at that time all our infrastructure was in AWS, we also didn’t spend much time deciding to use EKS.

I’m struggling to remember who we chose as the guinea pig for the run in EKS — it might have been Jenkins. Or Prometheus. It’s difficult to say, but gradually all the new services were launched in EKS, and on the whole, everyone liked the approach.

The only thing that we didn’t understand was how to organize CI/CD.

At that time, we had the heady mix of Ansible/Terraform/Bitbucket, and we were not entirely satisfied with the results. Besides, we tried to practice delivery engineering and didn’t have a dedicated DevOps team, and there were many other factors too.

What did we need?

  • Unification — despite the fact that we never needed our teams to use a strictly defined stack, in CI/CD, some certainty was desired.
  • Decentralization — as mentioned earlier, we did not have a dedicated DevOps team, nor the desire (or need) to start one.
  • Relevance — not bleeding edge, but we wanted a tech stack that was on trend.
  • We also wanted the obvious things like speed, convenience, flexibility, etc.

It was safe to say that Helm was the standard for installing and running applications in EKS, so we didn’t use Ansible or Terraform for the management and templating of Kubernetes objects, although this solution was offered. We only used Helm (although there were lots of questions and complaints about it).

We also didn’t use Ansible or Terraform to manage Helm charts. It didn’t fit with our desire for decentralization and wasn’t exactly convenient. Again, because we don’t have a DevOps team, our service can be deployed in EKS by any developer with the help of Helm, and we don’t need (or want) to be involved in this process. We therefore took the most controversial route: We made our wrapper for Helm so it would work like an automatic transmission, more specifically that it would reduce interaction with the user when making the decision to go or not to go (in our case, to deploy or not to deploy). Later, we added a general Helm chart to this wrapper, so the developer needed several input values for deploying:

  • What to deploy (docker image)
  • Where to deploy (dev, stage, prod, etc.)

So in all, the service deployment process was run from the repository of the same service by the same developer, exactly when and how the developer needed it. Our participation in this process was reduced to minimal consultation on some borderline cases and occasionally eliminating errors (where would we be without them?) in the wrapper.

And then we lived happily ever after. But our story isn’t about that at all.

In fact, I was asked to talk about why we use Kubernetes, not how it went. If I am honest (and as you can surely tell), I don’t have a clear answer. Maybe it would be better if I told you why we are continuing to use Kubernetes.

With Kubernetes, we were able to:

  • Better utilize EC2 instances
  • Obtain a better mix of decentralization (all the services arrive in Kubernetes from authorized repositories, we are not involved in the process) and centralization (we always see when, how, and from where a service arrives to us, whether it is a log, audit or event)
  • Conveniently scale a cluster (we use the combination cluster autoscaler and horizontal pod autoscaler)
  • Get a convenient infrastructure debug (not forgetting that Kubernetes is only one level of abstraction over several others, and even in the worst case scenario it is under the hood of standard RHEL … well, at the very least we have it)
  • Get high levels of fault tolerance and self-healing for the infrastructure
  • Get a single (well, almost) and understandable CI/CD
  • Significantly shorten TTM
  • Have an excellent reason to write this post

And although we didn’t get anything new, we like what we got.

READ MORE
11 upvotes·1 comment·16.6K views
reidmorrison
reidmorrison
·
January 9th 2022 at 5:35PM

For anyone starting out with deploying Docker Containers on AWS, AWS ECS/Fargate is a simpler solution to get started with.

If your operations team is already familiar with Kubertnetes, then AWS EKS is a great solution. For anyone not already familiar with Kubernetes or does not want to be concerned with managing Kubernetes, then AWS ECS is the simpler solution.

AWS ECS Fargate goes one step further by running your docker containers on shared infrastructure so that you don't have to manage any EC2 servers yourself. You tell it where your docker image is and it will run it for you. Put it behind an AWS ALB (Application Load Balancer) and it is straight forward to tell it how to automatically grow and shrink the cluster of docker containers based on load.

To get started with a deployment is as easy as restarting the cluster and it will pull the latest published version of your docker images. We store images in AWS ECR with the appropriate tags so that a rollback is as simple as re-tag and re-start.

·
Reply
Needs advice
on
MongoDB AtlasMongoDB AtlasFirebaseFirebase
and
DjangoDjango

Hi, I'm trying to build a project where companies display some of their data (mostly unstructured) that I want to store on a cloud database. And users will be able to read this data and interact with it (not much interaction tho). the primary focus on the database will be for easy access for displaying, and the data won't change a lot over a time period. I was wondering if I should 1) use Django as a framework to build on, and/or 2) use either Firebase or MongoDB Atlas as a database. In this, I am more inclined to Firebase because I will need to authenticate users and have past experience with Firebase.

READ MORE
4 upvotes·13.3K views
Replies (2)
Full Stack Web Developer ·

If your goal is to display data MongoDB is a good choice in term of storage and cost. The shared instance mostly fit entry level application.

If your unstructured data schema doesn't chance much (fields add/remove) you can even plug-in the GraphQl Api implementation with MongoDB Realm, also MongoDB Realm offer a variety of authentication providers (JWT/JWKS, apiKey, custom scheme). If you go with GraphQL you can skip Django (unless you have custom business logic) and just build a frontend app to display your data (VueJS, React, Svelte, jQuery, vanilla javascript, etc...).

READ MORE
4 upvotes·11.3K views
CTO at Voila Cab's·

If your primary focus is just storage of data and read's and not too many frequent writes, in this case you can build your API on serverless platforms ( AWS Lambda ) and store the Data in Dynamo DB's which comes with decent free tier usage. Firebase is preferably a good choice when you need real-time updates to be synced to clients ( Mobile devices or Web) .

READ MORE
1 upvote·11.3K views
Needs advice
on
VuforiaVuforia
and
TensorFlowTensorFlow

I am trying to get started with using TensorFlow. I have a few projects that mainly focus on image classifiers in mind but I have a question on a project that I'm trying to possibly do. The problem that I am hoping to solve is to find the orientation of an object. I was wondering if I have an object such as a cylinder and the problem is to find the orientation to insert into a machine via an arm. I am working with others who are more familiar with python but I don't know if TensorFlow would have the capabilities for my project. I think it would be able to identify the object but a solution I ponder is if it would be possible to run one image classifier to find and box the cylinder and another to find the orientation since the input would be the boxed image, and then to find a rudimentary orientation based off of many pictures with them at various angles. Or if this level is too complicated to run accurately with reasonable speeds. Possibly there is a much simpler solution or is a very hard problem. Though I thought I would ask to see if there is something else that would better suit my needs before taking the time to learn TensorFlow and try to make it only to be told it won't work.

READ MORE
5 upvotes·16K views
Replies (3)

I think it might be not so important which tensor computation framework you choose. It might be a better idea to see which model(s) fit your needs best and then have a look, where you can implement them with the lowest barrier. I would suggest you have a look at YOLO (You Only Look Once) and YOLO v2 or v3 and see if it fits to your requirements. From a fast look, I would say it should do the trick: https://www.it-jim.com/wp-content/uploads/2020/05/1D-direction-estimation-with-a-YOLO-network.pdf

YOLO 3 seems to have moved to Pytorch, though: https://github.com/wizyoung/YOLOv3_TensorFlow

READ MORE
3 upvotes·9.9K views
Senior Software Engineer ·

You can use an object classification coupled with a detection model and then train it on a set of images that can identify your object. To train the classification model, you can edit and expand the training set using opencv as well.

READ MORE
2 upvotes·14.6K views
View all (3)
Engineering Manager at Workpath·

With ongoing refactors from Class to function components we also realized that Enzyme was not what we wanted. Instead of testing internals (like component state) we opted to go for a more user centric approach in our integration tests.

It also helps that react-testing-libraries is more straightforward and intuitive to understand for engineers than Enzyme. It's really just rendering into a DOM instead of making decisions about shallow and mount rendering.

So far we are very happy about that decision. Even Juniors love to work with it and regularly are excited to write and contribute to better integration tests.

READ MORE
4 upvotes·22.5K views
Senior Software Engineer at WeRoad·

For a full-stack app or just simple APIs I'd go 100% with Laravel. You get a clean architecture, beautiful documentation and friendly and always growing community: the project is yours, from A to Z. With their docs and resources like Laracast you can start from zero and build what you want, when you want. The learning curve is definitely smaller when compared to Symfony and, with the help of a bit of "magic" (Facades etc.) you get the same results in the half of the time with cleaner code.

READ MORE
5 upvotes·26.1K views

Caring about privacy I've chosen to go with self-hosted Ackee analytics for incoming traffic analytics and ahoy ruby gem to build inside-app analytics. Still getting Caring about privacy I've chosen to go with self-hosted Ackee analytics for incoming traffic analytics and ahoy ruby gem to build inside-app analytics. Still getting a plenty of data without sending visitors' information to Google

READ MORE
5 upvotes·23.5K views

GitHub provides great user experience ans most developers are familiar with it. There is also an attractive pricing model for those who already have a Visual Studio subscription.

We also don't like the "everything in one tool" approach from GitHub as there are better tools for build system, package registries, etc. on the market.

READ MORE
6 upvotes·27.1K views

JavaScript is an integral part of web development and has been around almost since the inception of the world wide web. Frameworks are built around javascript because of its power and how browsers rely on the updated releases of javascript and try to make things either easier, and or more powerful. TypeScript is a good example of this.

READ MORE
10 upvotes·2 comments·28.8K views
Waldo Monroy
Waldo Monroy
·
December 14th 2021 at 6:34AM

Thank you for your input. Keep up the good work

·
Reply
rjp 777
rjp 777
·
December 29th 2021 at 12:19PM

thanks for sharing

·
Reply
Needs advice
on
DjangoDjango
and
ASP.NET CoreASP.NET Core

Hi, I am a professional accountant, not a computer programmer but I know programming concept and love it, in past have learned VB.Net in the year 2008. I want to use my accounting experience in programming by developing Web-Based ERP/Accounting Software integrated with to eCommerce platform. I want to develop ERP and eCommerce for a particular industry which can be used by 100+ companies. I am not very sure which programming language and framework I should use for the project. I found that Python-Django is the most powerful platform/framework to build any kind of application. Sometimes I am thinking about ASP.NET because I have learned little .Net concept. Now I want to invest my time and money in something which is very robust and helps to develop my project. So, I am very much confused between ASP.Net or Django. Please could anybody advise me which framework would be ideally good to develop this project which will carry for coming many years... Many thanks for your suggestions and advice.

READ MORE
5 upvotes·20.8K views
Replies (4)

If you are starting from scratch, I would recommend Express.js as a backend web framework. It is faster and more flexible than Django. Express makes it easy to build web applications offering numerous benefits such as efficiency and quicker development times. Some features that are worth mentioning: middlewares, templating, routing, and debugging.

The most important element that is missing the stack is the database. A Web-Based ERP/Accounting Software require a powerful Relational Database to comply with ACID princliples (Atomicity, Consistency, Isolation and Durability). By atomicity, we mean that that database is able to perform the transactions in an atomic manner. A transaction is just a single unit of work, which can either be one query, or multiple queries. Let's say that we have two accounts. And we need to transfer $100 from account one to account two. Now this transfer is just one transaction, but it is going to consist of three different steps. The first step is checking if the account one does have $100. The second would be upgrading the amount of account one to be $900. And the third would be taking this $100 and making the balance and account two be $200. If the database does support atomic transactions, if one of these three steps fail, the whole transaction should fail. This is what atomicity is.

Consistency means that the database should help in achieving the correct data state, adding certain constraints. We can add a constraint on the amount column that it can never be negative, and the database must make sure that this constraint must always be followed.

Then, we have isolation, which is mainly about the concurrency control. Let's say that we have an account which has $1,000, and there are two persons A and B trying to get the money out of this account. So $1,000 and $100. If we let both of these transaction happen at the same time, this would result in the reduction of $1,100. So the balance will result in the negative $100. Isolation prevents this to happen.

Finally, durability means that once a transaction is committed, the data must be written to the non volatile memory or the storage. So that even if the crash happens or something wrong happens with the database, the data must be there and not be corrupted.

In terms of relational database my recomendation is using Postgres. Postgres is an object-relational database, while MySQL is a purely relational database. This means that Postgres includes features like table inheritance and function overloading. Postgres also adheres more closely to SQL standards.

READ MORE
6 upvotes·2 comments·19.2K views
ALESSIO SALTARIN
ALESSIO SALTARIN
·
December 23rd 2021 at 3:25PM

You are making a choice beween a non-typed language (Python) and a typed one (C#). Bear in mind that complex projects always need the clarity and order that a typed language brings. Although I still love Django, I recommend it for small project. Large projects needs types.

·
Reply
Dinesh Kasar
Dinesh Kasar
·
December 30th 2021 at 11:41AM

Thank you very much for your suggestions. I also prefer ASP.Net, but while looking at currently scenario it seemed Python-Django growing up so it confused me whether ASP is good idea to look into.

·
Reply
Full Stack Web Developer ·

If you already have some knowledge in C# you can go with ASP.NET Core MVC and continue your learning path (if you liked the language in the first place). but both solution will allow you to build an ERP/eCommerce project.

There is not too much difference between Django and ASP.Net Core MVC both follow the same design principles for building application, they both flexible, provide a lot of library, have a great community support..

The downside (thats my opinion) with ASP.Net Core you are going to follow the Microsoft philosophy of doing thing and you will mostly by tight to there products lineup. Instead of Django where you'll have more freedom.

If your concern is - Robustness: both are valid choice - Long Term Support: Go ASP.Net why? Because the project is maintained by Microsoft the chance that the project go unmaintained is low. Django is more Open Source we never know when it will stop be maintained.

The best I can give you, it's to try both and make your own opinion. Build a Proof of Concept and see by yourself.

READ MORE
5 upvotes·1 comment·15.5K views
Dinesh Kasar
Dinesh Kasar
·
December 30th 2021 at 11:44AM

Thank you Guillaume Maka for your recommendations. It is quite difficult to make up the mind when both choices are quite similar in terms of giving the the result. so as you suggested, I would try both at the initial level and see where i get comfort.

·
Reply
View all (4)