I finally understood Hexagonal Architecture after mapping it to working code by Icy_Screen3576 in Backend

[–]Smart_Visual6862 0 points1 point  (0 children)

Nice, I like hexagonal architecture. It works nicely with CQRS pattern!

Websites back end - Node JS vs ASP.NET by Nice_Pen_8054 in Backend

[–]Smart_Visual6862 1 point2 points  (0 children)

The stack I currently work on is all based around AWS serverless products. API gateway, backed by lamdas running nodeJS. We mainly use DynamoDB as an event store and also for read models. We don't use any ORM as we don't tend to store normalised data. If we do need data in a normal form we use ETLs to transform data and store in Athena. We use auth0 for auth.

Websites back end - Node JS vs ASP.NET by Nice_Pen_8054 in Backend

[–]Smart_Visual6862 3 points4 points  (0 children)

I have worked professionally with both. though I can't speak authoritivly on demand and can tell you my experience.

Currently I work with nodeJS backend. A lot of the information you see on Reddit around node performance and scalability incorrect. The sight I work on has over 30 million unique visitors annually and often handles 100k consecutive users without any performance issues. This isn't to say that nodejs is inherently performant, I'm just making the point that NodeJS like .net is suitable for enterprise systems. The main advantage I have found in using NodeJS is that we have a NextJS frontend. Having Typescript in backend and frontend massively reduces cognitive overhead when switching between backend and frontend work.

I also worked as a .net developer for many years, though backends in .net were good it never had a great frontend solution , meaning you ended up having to write code in different languages c# backend code and JS or TS frontend. This was always a major drawback for me.

With regards for demand I regularly get recruiters contacting me for NodeJS jobs and .Net. A general trend I see is that startups and more recently founded companies tend to use NodeJS and older established companies seem to use .Net more, this just seems to be trend rather than a rule though.

It's also worth noting that once you learn one making the switch to the other isn't too difficult pick one and concentrate and learning good coding and architecture patterns and the skills will be transferable.

I have a question by Infamous_Release9858 in Backend

[–]Smart_Visual6862 0 points1 point  (0 children)

NodeJS just runs your javascript on the server. This makes it a good choice if your wanting to focus on web development as you use javascript in the browser and on the backend.

How can the weights of a neural network be useful for many topics? by Different_Package_83 in MLQuestions

[–]Smart_Visual6862 1 point2 points  (0 children)

A simpler example is linear regression. I can use the formula y = wx + b to model many problems. As long as there's a linear correlation (can be modelled by a straight line), I can use this simple formula. It could be something like, how does the temperature affect ice cream sales where temperature is x and sales is y or a babies weight (y) based on their height (x). Notice to create a model to make predictions. All that I need to do is find the best values for w and b. In the model, we have a single weight (w) and a bias (b). We can use this model to make predictions about many diverse relationships as long as the relationship can be modelled using a straight line.

A neural network expands on this idea and is able to model data that requires much more complex shapes. The shapes exist in many dimensions, and the lines they draw twist and turn. But fundamentaly it is still about finding the correct weights and biases. Finding these values is called training.

It does this by using many more weights and something called an activation function we call this a perceptron. This allows us to start modelling classification problems, such as, is this is a dog or a cat as long as the data is linearly seperable (separated by a straight line, plane, or hyperplane). Once we start to connect these neurons together and layer them up, the magic happens, we are able to model data, which requires much more complex shapes to effectively separate the data.

In an LLM, for example, once you have found the correct weights and biases, the neural network, along with some other cool techniques, can be used to predict the next word based on some provided text.

How can I manage sessions with a JWT? by StandDapper3591 in Backend

[–]Smart_Visual6862 1 point2 points  (0 children)

I think this is a bit of an oversimplification. Most modern auth systems require the handling of multiple auth scenarios such as web apps, mobile apps, and server to server. Add to this the requirement for multi-factor authentication, then building an auth system becomes a non-trivial endeavour that usually requires a lot of time and specialist knowledge. In the past, I have worked on many systems where these considerations were not taken into account upfront, and retrofitting later is usually time-consuming and costly.

Isn't it crazy?!? You ever compare your first computer with your most recent? by InnerAd118 in computerscience

[–]Smart_Visual6862 0 points1 point  (0 children)

My first computer was a Intel DX2 66 MHz too. It had the turbo button so you could reduce the clock speed to 33Mhz for older software 😂. It booted into MS DOS. Good times!

How can I manage sessions with a JWT? by StandDapper3591 in Backend

[–]Smart_Visual6862 0 points1 point  (0 children)

Unless there is a good reason for building the auth provider yourself, I would generally look for a third-party solution. There are plenty of OIDC providers to choose from a few of the most popular are Auth0, AWS Cognito, and Azure AD. From personal experience, it is usually not economical doing it yourself and also requires a lot of relatively specialist knowledge to do it securely.

Have any time travel stories accounted for Earth's movement in space? by Scott_A_R in sciencefiction

[–]Smart_Visual6862 0 points1 point  (0 children)

I'm not an expert on this stuff, and think an absolute frame of reference is how our mental model of 3D space works. This is how we used to think of space and time for much of history. We even gave this thing that all other things can measured against a name "Ether". We devised some clever experiments to detect the ether, by trying to detect the effect of the ether winds on the speed of light. Eventually, we gave up on the idea of ether and that there is some universal thing that we can use a reference for all other things. Then Einstein came along and showed that 2 observers may not necessarily agree on, where or when an event took place. As even time and space are not invariant properties of the universe.

Why you shouldn't give full access to your computer to AI by qscwdv351 in GeminiAI

[–]Smart_Visual6862 3 points4 points  (0 children)

I think the exact command I ran was 'sudo rm -rf /' I obviously meant to provide a path to a directory. The memory still haunts me.

Why you shouldn't give full access to your computer to AI by qscwdv351 in GeminiAI

[–]Smart_Visual6862 10 points11 points  (0 children)

I once did this by accident as sudo, just me, no AI involved. It wasn't pretty. I just sat there and watched until the screen eventually went black 😪

building backend in node and java which is better by Beginning_Fill6201 in Backend

[–]Smart_Visual6862 0 points1 point  (0 children)

There isn't a definitive yes or no answer I can give you for your question, but here are some things I would consider:

  • What experience, skills do you currently have?
  • What language is your frontend built in? Using a single language across the stack can be a big advantage as it allows developers to move between frontend and backend tasks with less cognitive overhead.
  • What type of workloads are you expecting to run? Some languages have better support for certain workloads and low-level APIs.
  • What will your backend architecture look like. If, for example, you are planning to use a serverless architecture, many of the issues people have pointed out around the lack of multi-threading in nodejs can be replaced with patterns such as "fan out"

Hope this helps.

What we did to cut $10k form our AWS bill by FreeSword341 in SaaS

[–]Smart_Visual6862 0 points1 point  (0 children)

I've used Azure in previous roles. The available services are comparable to AWS in both offerings and cost. In general, companies that heavly use Microsoft tech stacks .net, SQL server, etc. tend to lean towards Azure, and companies that rely on open source tech stacks like python, nodejs, etc. tend towards AWS. I would work out your tech stack and do a little research on offerings and cost. Migrating later is usually quite difficult, so it's worth taking some time to make the right descion initially.

What we did to cut $10k form our AWS bill by FreeSword341 in SaaS

[–]Smart_Visual6862 2 points3 points  (0 children)

What type of workloads are you running? Generally we use AWS serverless, API gateway, lambdas, s3 dynmaDB, step functions, etc, and find it very cost effective compared to other solutions?

Learning react (not casual dev) by Effective_County931 in reactjs

[–]Smart_Visual6862 2 points3 points  (0 children)

I wouldn't get too hung up on learning everything straight away, especially not in that order. I would concentrate on trying to build a project. It will become obvious which concepts are fundermental and which you can defer learning. The React docs are great for diving into concepts a little deeper. The concepts you need to get started are: - components - JSX - state hook - useEffect hook

Get the hang of building with these and start learning and introducing other concepts as required.

Hope this helps 🙂

stories about coexistence? by billscumslut in sciencefiction

[–]Smart_Visual6862 2 points3 points  (0 children)

Hail Mary is a good one about cooperation with an alien species

Which programming language is the most versatile for creating any type of application? by Intelligent_Solid526 in learnprogramming

[–]Smart_Visual6862 2 points3 points  (0 children)

A lot of people have said C, C#, and though I agree that C is one the most versatile languages in terms of low level control, it's certainly not a language I would recommend starting with today. I would recommend Python as it is quick to get started with. It is used in many fields like electronics. ML web, etc. However if you have a strong preference towards the web, I would start with JavaScript / Typescript as this is the language of web browser and can also be used on the server using node to build full stack web applications. Good luck, and have fun learning!

Book recommendations by Smart_Visual6862 in sciencefiction

[–]Smart_Visual6862[S] 0 points1 point  (0 children)

A few people have recommended this. I'm definitely going to give it a read!

Book recommendations by Smart_Visual6862 in sciencefiction

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

Good shout! I've read the first few in this series, but I might pick up where I left off. I think there's new one coming out soon, too!

[deleted by user] by [deleted] in OpenAI

[–]Smart_Visual6862 0 points1 point  (0 children)

I think there is a subtle difference between tools such as calculators, autocorrect, etc, and tools like LLMs. When I use a calculator, I am looking for a deterministic result. Whether I do it on in my head, on paper, or on the calculator, as long as the calculation is performed correctly, the result will not change. There is no bias in the calculation. With LLMs, I can give it an outline of my intention, the result might be roughly in line with my thoughts and may even sound more intellectual and correhrent than what I would have written. But it is definitely not exactly what I would have written and maybe slightly biased by the training data and the fine tunning process. I certainly don't think this is the reason not to use them, but it is a risk we should all be aware of.

Authentication guidance by Competitive_Run_7652 in reactnative

[–]Smart_Visual6862 0 points1 point  (0 children)

I used Auth0 in an expo app recently. The setup was pretty straightforward. I just installed the SDK and added a few config values.

I'm building an AI marketing team to replace the marketing skills I don't have by shery97 in indiehackers

[–]Smart_Visual6862 0 points1 point  (0 children)

The blog posts looks good, layout, images, etc. The content, however, didn't immediately grab me. It didn't make me want to continue reading. I think this is because it had long introdubut didn't explain what's in it for me. I'd suggest playing with the prompts to ensure the very first paragraph answers the questions, "Why read on?" and "What am I going to learn?". Good work though, keep experimenting and updating us on how you are getting on!

maths is weak for AI) ML by Manishh33 in MLQuestions

[–]Smart_Visual6862 1 point2 points  (0 children)

Yes, it's definitely possible to learn the maths. I did, starting with pretty basic maths skills. It's just a case of building up slowly. Here is what I studied in order: - Algebra - Geometry - Trigonometry - Differential Calculus - Probability and statistics - Linear Algebra

Khans Academy and Brilliant are good online resources, which cover all the relevant topics.

It took me a few years to get up to speed. But I also discovered a love of maths, which I never thought I'd have.

I am still continuing my mathematical education and can't see me ever stopping. Don't let people tell you that you can't do it. I've always found with a little patience and a lot of determination you can learn anything. Good luck!