Starting point: understanding a path full of potholes By albro | [En/Esp]

in Programming & Dev2 years ago (edited)

[EN]


Have you ever heard someone say that a certain programming language is hard? I have heard this a lot! Especially from people who have no background in programming! Have you ever wondered what a program is? What is programming? You may think these questions are ridiculous, but I think you should understand where you are and what you are doing before you start!

Hello to all of you dear ones

I'm @albro and here I want to talk about programming issues and the path I've taken. I remember when I was attending programming classes for the first time and the professor was talking about concepts like programs and programming, how confusing it was for me, who had dived into it without any background or experience. . When the algorithms came out as flowcharts, some of them were dumb!

What was the reason for this dumb? Today, when I think about that moment, it is a little painful for me!

I remember that when the teacher wanted to teach us addition or subtraction in the early days of school, he said: Imagine two crows sitting on an electric wire. How many crows do we have if another crow joins them?

You might say: What does it matter?

The point is that you must understand that the program is nothing more than solving problems and programming is nothing more than the methods of solving those problems.

But what are these problems?

Any problem that can be automated to be executed by a computer system, without any fatigue and ruthlessly.

I remember when I needed a bot to send mass emails. When I looked for it, there were prices for it. I opened the editor and wrote a few lines of code! Not professional, but only to meet personal needs and Bing! In a fraction of the time, I fulfilled my need without any cost!

Maybe there is an idea in your mind that is needed to make life easier or solve a human need. That's the problem and the program, and it's your job as a programmer to solve it!

In short, always remember: program means problem and programming means problem solving!

To solve any problem, everyone chooses a method. Of course, there may be different solutions and methods to solve a problem, and it depends on people's point of view.

The method and solution of the problem is the algorithm.

This template will give birth to your ultimate software! The software that results from steps such as determining the problem, solutions and finding the optimal algorithm. When the programmer finds his/her optimal algorithm and gives it to the compiler in the form of programmed codes, the final result is seen and it is nothing but the answer to the puzzle in question. Something automated that is run by a computer system with speed, ruthlessness and tirelessness. This is your software!

But why different algorithms? Finally we found the solution and the program works, so why should we try different solutions?

The point is that a program that works alone is not enough. Your algorithm must be optimal and take into account dimensions such as time and memory consumption. Some people only control the memory, and some only control the speed of program execution, and perfectionists both! But this is a big challenge because you can't always achieve both and in some places you have to sacrifice one for the other! A bitter and undeniable fact.


[ESP]


¿Alguna vez has escuchado a alguien decir que cierto lenguaje de programación es difícil? ¡He oído esto mucho! ¡Especialmente de personas que no tienen experiencia en programación! ¿Alguna vez te has preguntado qué es un programa? ¿Qué es la programación? Puede pensar que estas preguntas son ridículas, pero creo que debe comprender dónde se encuentra y qué está haciendo antes de comenzar.

Hola a todos ustedes queridos

Soy @albro y aquí quiero hablar de temas de programación y el camino que he tomado. Recuerdo cuando estaba asistiendo a clases de programación por primera vez y el profesor estaba hablando de conceptos como programas y programación, lo confuso que era para mí, que me había sumergido sin ningún antecedente ni experiencia. . Cuando los algoritmos aparecieron como diagramas de flujo, ¡algunos de ellos eran tontos!

¿Cuál fue la razón de este tonto? Hoy, cuando pienso en ese momento, ¡es un poco doloroso para mí!

Recuerdo que cuando el maestro nos quería enseñar a sumar o restar en los primeros días de escuela, decía: Imagínese dos cuervos sentados en un cable eléctrico. ¿Cuántos cuervos tenemos si otro cuervo se les une?

Usted podría decir: ¿Qué importa?

El punto es que debes entender que el programa no es más que resolver problemas y la programación no es más que los métodos para resolver esos problemas.

Pero, ¿cuáles son estos problemas?

Cualquier problema que pueda ser automatizado para ser ejecutado por un sistema informático, sin fatiga y sin piedad.

Recuerdo cuando necesitaba un bot para enviar correos electrónicos masivos. Cuando lo busqué, había precios para él. ¡Abrí el editor y escribí algunas líneas de código! ¡No profesional, sino solo para satisfacer necesidades personales y Bing! ¡En una fracción del tiempo, satisfice mi necesidad sin costo alguno!

Tal vez hay una idea en tu mente que se necesita para hacer la vida más fácil o resolver una necesidad humana. ¡Ese es el problema y el programa, y es tu trabajo como programador resolverlo!

En resumen, recuerde siempre: ¡programa significa problema y programación significa resolución de problemas!

Para resolver cualquier problema, todos eligen un método. Por supuesto, puede haber diferentes soluciones y métodos para resolver un problema, y depende del punto de vista de las personas.

El método y solución del problema es el algoritmo.

¡Esta plantilla dará a luz a su software definitivo! El software que resulta de pasos tales como determinar el problema, soluciones y encontrar el algoritmo óptimo. Cuando el programador encuentra su algoritmo óptimo y se lo entrega al compilador en forma de códigos programados, se ve el resultado final y no es más que la respuesta al rompecabezas en cuestión. Algo automatizado que está dirigido por un sistema informático con rapidez, crueldad e incansable. ¡Este es tu programa!

Pero, ¿por qué diferentes algoritmos? Finalmente encontramos la solución y el programa funciona, entonces, ¿por qué deberíamos probar diferentes soluciones?

El punto es que un programa que funciona solo no es suficiente. Su algoritmo debe ser óptimo y tener en cuenta dimensiones como el tiempo y el consumo de memoria. Algunas personas solo controlan la memoria, y otras solo controlan la velocidad de ejecución del programa, ¡y los perfeccionistas son ambos! ¡Pero este es un gran desafío porque no siempre puedes lograr ambos y en algunos lugares tienes que sacrificar uno por el otro! Un hecho amargo e innegable.





Thanks

[albro]

Sort:  

Congratulations @albro! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

You received more than 100 upvotes.
Your next target is to reach 200 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out our last posts:

Keep Hive Buzzing - Support our proposal!
The Hive Gamification Proposal
Support the HiveBuzz project. Vote for our proposal!

Yay! 🤗
Your content has been boosted with Ecency Points, by @bgmoha.
Use Ecency daily to boost your growth on platform!

Support Ecency
Vote for new Proposal
Delegate HP and earn more

!LUV