Python

Python

Application and Data / Languages & Frameworks / Languages
Software engineer at Typeform·
Shared insights
at
  • Go because it's easy and simple, facilitates collaboration , and also it's fast, scalable, powerful.
  • Visual Studio Code because it has one of the most sophisticated Go language support plugins.
  • Vim because it's Vim
  • Git because it's Git
  • Docker and Docker Compose because it's quick and easy to have reproducible builds/tests with them
  • Arch Linux because Docker for Mac/Win is a disaster for the human nervous system, and Arch is the coolest Linux distro so far
  • Stack Overflow because of Copy-Paste Driven Development
  • JavaScript and Python when a something needs to be coded for yesterday
  • PhpStorm because it saves me like 300 "Ctrl+F" key strokes a minute
  • cURL because terminal all the way
READ MORE
12 upvotes·436.6K views
Shared insights

Python helps us automate the tedious and has the gold standard Natural Language Processing library. Python

READ MORE
4 upvotes·67.3K views
Shared insights
at
()

I really love Django because it is really fast to create a web application from scratch and it has a lot a facilities like the ORM or the Admin module ! The Python language is really easy to read and powerful, that's why I prefer Django over Symfony.

I use Django at work to make tools for the technicians but I also use it for me to build my personal website which I host on PythonAnywhere, and with a domain name bought on Namecheap.

READ MORE
Accueil | Benbb96 (benbb96.com)
21 upvotes·373.7K views
Engineering Manager at Taylor and Francis·

We are in the process of building a modern content platform to deliver our content through various channels. We decided to go with Microservices architecture as we wanted scale. Microservice architecture style is an approach to developing an application as a suite of small independently deployable services built around specific business capabilities. You can gain modularity, extensive parallelism and cost-effective scaling by deploying services across many distributed servers. Microservices modularity facilitates independent updates/deployments, and helps to avoid single point of failure, which can help prevent large-scale outages. We also decided to use Event Driven Architecture pattern which is a popular distributed asynchronous architecture pattern used to produce highly scalable applications. The event-driven architecture is made up of highly decoupled, single-purpose event processing components that asynchronously receive and process events.

To build our #Backend capabilities we decided to use the following: 1. #Microservices - Java with Spring Boot , Node.js with ExpressJS and Python with Flask 2. #Eventsourcingframework - Amazon Kinesis , Amazon Kinesis Firehose , Amazon SNS , Amazon SQS, AWS Lambda 3. #Data - Amazon RDS , Amazon DynamoDB , Amazon S3 , MongoDB Atlas

To build #Webapps we decided to use Angular 2 with RxJS

#Devops - GitHub , Travis CI , Terraform , Docker , Serverless

READ MORE
18 upvotes·1 comment·2.7M views
Jon Senterfitt
Jon Senterfitt
·
January 29th 2021 at 7:07AM

But why not just use Contentful?

·
Reply

Context: I wanted to create an end to end IoT data pipeline simulation in Google Cloud IoT Core and other GCP services. I never touched Terraform meaningfully until working on this project, and it's one of the best explorations in my development career. The documentation and syntax is incredibly human-readable and friendly. I'm used to building infrastructure through the google apis via Python , but I'm so glad past Sung did not make that decision. I was tempted to use Google Cloud Deployment Manager, but the templates were a bit convoluted by first impression. I'm glad past Sung did not make this decision either.

Solution: Leveraging Google Cloud Build Google Cloud Run Google Cloud Bigtable Google BigQuery Google Cloud Storage Google Compute Engine along with some other fun tools, I can deploy over 40 GCP resources using Terraform!

Check Out My Architecture: CLICK ME

Check out the GitHub repo attached

READ MORE
GitHub - sungchun12/iot-python-webapp: Live, real-time dashboard in a serverless docker web app, and deployed via terraform with a built-in CICD trigger-See Mock Website (github.com)
31 upvotes·4 comments·1M views
Franco Austin
Franco Austin
·
November 22nd 2019 at 10:54AM

Relly like the architectural artefact, what did you use to produce it?

·
Reply
Sung Won Chung
Sung Won Chung
·
November 24th 2019 at 9:57PM

I used draw.io. Free and easy to use!

https://www.draw.io/

·
Reply
SANJEEV TOORA (UK)
SANJEEV TOORA (UK)
·
January 29th 2020 at 8:55AM

Architecture looks great! Just out of curiosity, did you have unit and integration testing components for Terraform e.g. Terratest, Kitchen Terraform, Sentinel?

·
Reply
Sung Won Chung
Sung Won Chung
·
January 29th 2020 at 3:17PM

I did NOT. This was to demo the mechanics. Not something for robust production. Would love if you can make a pull request for some of those tests ;)

·
Reply
Shared insights
at

I'm working as one of the engineering leads in RunaHR. As our platform is a Saas, we thought It'd be good to have an API (We chose Ruby and Rails for this) and a SPA (built with React and Redux ) connected. We started the SPA with Create React App since It's pretty easy to start.

We use Jest as the testing framework and react-testing-library to test React components. In Rails we make tests using RSpec.

Our main database is PostgreSQL, but we also use MongoDB to store some type of data. We started to use Redis  for cache and other time sensitive operations.

We have a couple of extra projects: One is an Employee app built with React Native and the other is an internal back office dashboard built with Next.js for the client and Python in the backend side.

Since we have different frontend apps we have found useful to have Bit to document visual components and utils in JavaScript.

READ MORE
21 upvotes·2.2M views

Python is actually the first decision we made in our stack selection process. The entire dev team is familiar with the language and more importantly, it is the language of choice for most of the leading machine learning research and applications. Another thing that we considered is that using python allows us to more easily hire developers in the future. Python is generally the kind of language in which it is really easy to get something started with minimal effort, which is ideal for us given our short timeline

READ MORE
31 upvotes·1 comment·57.7K views
Shamaru Primera
Shamaru Primera
·
February 17th 2020 at 3:58PM

I want from manjaro is remote debug like nodejs.

·
Reply
Node.js Software Engineer ·

In our company we have think a lot about languages that we're willing to use, there we have considering Java, Python and C++ . All of there languages are old and well developed at fact but that's not ideology of araclx. We've choose a edge technologies such as Node.js , Rust , Kotlin and Go as our programming languages which is some kind of fun. Node.js is one of biggest trends of 2019, same for Go. We want to grow in our company with growth of languages we have choose, and probably when we would choose Java that would be almost impossible because larger languages move on today's market slower, and cannot have big changes.

READ MORE
17 upvotes·1 comment·385.8K views
max budnick
max budnick
·
July 9th 2020 at 3:29AM

thank you for sharing.

·
Reply
Needs advice
on
MongoDBMongoDB
and
PostgreSQLPostgreSQL

Hello everyone,

Well, I want to build a large-scale project, but I do not know which ORDBMS to choose. The app should handle real-time operations, not chatting, but things like future scheduling or reminders. It should be also really secure, fast and easy to use. And last but not least, should I use them both. I mean PostgreSQL with Python / Django and MongoDB with Node.js? Or would it be better to use PostgreSQL with Node.js?

*The project is going to use React for the front-end and GraphQL is going to be used for the API.

Thank you all. Any answer or advice would be really helpful!

READ MORE
14 upvotes·467.1K views
Replies (11)
Code Alchemist at DOOLTA·
Recommends
PostgreSQL

If you want safety (no data corruption/loss) Postgresql is the way to go. You can use Postgresql with python/django but also node. And as a bonus postgresql performance should match those of mongodb if properly tuned...

READ MORE
23 upvotes·1 comment·189K views
George Krachtopoulos
George Krachtopoulos
·
March 20th 2020 at 1:03PM

Thank you for your advice!

·
Reply
Lean Software Programmer ·
Recommends
PostgreSQL

I mean what you use really comes down to your team. I would normally pick a relationship database over an object store for reporting and other things down the road that are much harder to do with a DB like MongoDB. As for language, I would pick Elixir as it does these things really well but that because that is what I know best. Python or Node.js are also sure good choices. Whoever is building should probably pick the language, framework, and database.

READ MORE
12 upvotes·1 comment·189K views
George Krachtopoulos
George Krachtopoulos
·
March 28th 2020 at 5:38PM

Thank you for your kind note.

·
Reply
View all (11)
AVP - Business at VAYUZ Technologies Pvt. Ltd.·
Needs advice
on
Node.jsNode.jsPythonPython
and
RailsRails

Hi Community! Trust everyone is keeping safe. I am exploring the idea of building a #Neobank (App) with end-to-end banking capabilities. In the process of exploring this space, I have come across multiple Apps (N26, Revolut, Monese, etc) and explored their stacks in detail. The confusion remains to be the Backend Tech to be used?

What would you go with considering all of the languages such as Node.js Java Rails Python are suggested by some person or the other. As a general trend, I have noticed the usage of Node with React on the front or Node with a combination of Kotlin and Swift. Please suggest what would be the right approach!

READ MORE
Neobank - Wikipedia (en.wikipedia.org)
22 upvotes·456.6K views
Replies (9)
Recommends
Serverless

Use the language which works well for the developers you have or have available. If you're starting, building a first iteration is far more important than worrying about what language might be best to solve a problem you may never have.

When hiring, look for developers, not "node developers" or "java developers" having people who recognise and are willing to adapt means you can have the flexibility you will need to solve as-yet unforeseen issues. Hire people who are wed to a specific language and you will be bound to that language, regardless of whether it's most appropriate or not.

READ MORE
42 upvotes·1 comment·95.4K views
Shivam Bhargava
Shivam Bhargava
·
March 26th 2020 at 7:43AM

Hey! Thanks for the response. I do agree with this line of thought, currently I do have an established team of Folks who are pretty good at NodeJS and related stacks (MEAN, MERN, Meteor etc.) along with expertise in Flutter, Native Apps along with AWS as well. I think this would constitute the core App and then integrations all across can take place. Would you have any reading material on the Serverless front in relation to Neobanks / Digital Banking platforms? Thank you.

·
Reply
Recommends
Rails
in

For online banking, it'll be less computation intensive and more data intensive. So, Rails will be better than Python. I'll not recommend Node.js as it's not as scalable as those. If I had to choose indepently I would took Go.

READ MORE
19 upvotes·5 comments·95.5K views
Mikael Sand
Mikael Sand
·
March 27th 2020 at 9:48PM

What measurements do you base the scalability conclusion / comparison of python, ruby (rails), and nodejs on?

·
Reply
Shaswata Das
Shaswata Das
·
April 1st 2020 at 12:46PM

nodejs maintains concurrency by events, it's common sense that a single thread would never be able to equivalent of multi-thread.

Now, let's talk about Ruby vs Python.

Python requires the developer to be clean about side effects and isolation. With Ruby one can write concurrent programs that operate on multiple cores easily, similar to Python, a developer is responsible for side effects and isolation issues. Python’s concurrency process is more resource-demanding as compared to Ruby. But then again, it boils down to developer coding habits if one has to take the cake offered by both Python and Ruby Performance languages.

·
Reply
Mikael Sand
Mikael Sand
·
April 1st 2020 at 3:55PM

Seems like a banking system would have its scalability depend more on the transactional database in use, rather than the choice of language used for the api layer, which probably just translates from/to http+json or whatever transport and message standards used, to some atomic sql / db query in a transaction and serialising the response. Seem unlikely there would be any need for shared memory multi-threading in the api layer. Node.js could probably be used just fine, e.g. with PostGraphile on top of PostgreSQL. It seems very unlikely to be the bottleneck.

·
Reply
Shaswata Das
Shaswata Das
·
April 2nd 2020 at 8:59AM

In case of online banking, bottleneck may occur. I'd rather prefer isolated hybrid database API, that'll better than PostGraphile. For security issues, I'll not recommend any GraphQL API in online banking application, also it'll not be helpful in this scenario. It's true that "a banking system would have its scalability depend more on the transactional database in use", but when it's about online banking it's not only about transaction, I bet, they've more to offer to their clients. So, scalability on api layer is also important for this case.

·
Reply
Varun Sharma
Varun Sharma
·
April 22nd 2020 at 9:51AM

Brother I have been working in Ruby on rails and nodejs from last 3 years. From my experience it is easy to scale nodejs as compared to Ruby and it even requires less resources for deployment as well. This was one of the reason why linkedin shifted their stack from Ruby on Rails to Nodejs.

·
Reply
View all (9)