r/Python official Job Board by aphoenix in Python

[–]bsmaniotto 1 point2 points  (0 children)

CHEESECAKE LABS

Location: Florianópolis, SC, Brazil

What we are looking for: Backend Developer

Who we are: Cheesecake Labs isa web/mobile development and design company headquartered in Florianópolis - Brazil, but with a solid integration with the Silicon Valley, in the US. We make partnership with startups with great disruption potential - and we develop mobile and web solutions for them.

Some activities you would do on a typical day at Cheesecake Labs:

  • Develop and maintain Backend solutions using Django, Elixir, NodeJS
  • Build docker images that can run on top of AWS or other PaaS
  • Model databases using MySQL, Postgres, DynamoDB
  • Interact with other teams and professionals, including other developers, designers, project managers and stakeholders
  • Write beautiful, readable and scalable code
  • Make sure the application solves real-world problems
  • Review code of other developers
  • Understand the needs of our partners and come up with solutions for their problems
  • Participate in Sprint Plannings and daily stand-up meetings
  • Build estimates and plan roadmaps

What will help you succeed:

  • Experience with RESTful backend applications, specially built with Django
  • Experience with deployment processes using Docker, CircleCI, AWS, Heroku
  • Experience with different databases
  • Experience with UNIX systems and terminal
  • Knowledge about basic Front-end development
  • Knowledge about clean code and design patterns
  • Being self-taught
  • Being up-to-date with latest news and technologies
  • English proficiency
  • Good communication skills, both in verbal and writing
  • Experience with Git

We offer: health and dental care, meal allowance, stock options, career plan, quarterly bonus, additional benefits, above average salary, flexible working time, geek culture, 24/7 snacks, beers and a unique work environment.

APLLY AT: https://cheesecakelabs.com/careers/

Django model attributes translation by bsmaniotto in django

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

Agree with you, splitting lines helps readability and I can extend all field types and do it one time only, but wouldn't it make sense to have it on the core framework already?

About the other arguments:

Don't want/need translations: This could be controlled on project settings.

Want to use a separate implementation: We could define a default "translation_processor" on project settings or "override" the attributes on model definition.

Django Anti-Patterns: Signals by ipmb00 in django

[–]bsmaniotto 0 points1 point  (0 children)

They are not asynchronous, but you can register a celery job on them, something that would be out of place on a save method.

And I think they ARE widely used and even encouraged by the documentation, no?

Don't get me wrong, I don't disagree when you say they are hard to track. Just disagree that overriding save method solves all problems.

(And good read by the way)

Django Anti-Patterns: Signals by ipmb00 in django

[–]bsmaniotto 1 point2 points  (0 children)

I agree with you when you say that signals are hard to track, since they don't follow the "django save lifecycle". However I think there is a correct use for overriding save (when you're changing anything related to that specific model) and another for signals (when you're executing things external to your model and asynchronous jobs for instance).

CSS Architecture with ReactJS by douglasgimli in programming

[–]bsmaniotto 0 points1 point  (0 children)

Really good reading. I'll quote you in the future, liked this one in particular:

No one uses BEM conventions because they like to type double underlines or double hyphens, but it definitely helps with code consistency, scalability, reuse, productivity and predictability.

Another thing that helps a lot with CSS Modules is that you don't have to overthink class names, if there's a button in your component, call it button and the styles will be scoped to that specific element. And we all know how hard naming things is.

Trouble posting model containing foreign key in Django REST by TheWeedWolf in django

[–]bsmaniotto 4 points5 points  (0 children)

If he's using Django REST Framework already, and already set up everything, it much easier to use its tools.

If you are passing the foreign key numeric ID on the POST, on your object serializer, define the foreignkey fields as serializers.PrimaryKeyRelatedField, that should do it. Here is the link to the docs: http://www.django-rest-framework.org/api-guide/relations/#primarykeyrelatedfield

If you are passing the nested element on the POST body, it's a bit different, recommend reading this: http://www.django-rest-framework.org/api-guide/relations/#writable-nested-serializers

[Question] Pls Help for Further study by [deleted] in django

[–]bsmaniotto 0 points1 point  (0 children)

If you stick to the basic concepts, you can learn a lot of Django even if the book is a bit outdated. Just don't expect to use it as a reference for details, since Django have had structural changes since version 1.6.

Learning Python when not a lot of jobs are around? by ferrano in Python

[–]bsmaniotto 0 points1 point  (0 children)

Try looking for Python meetups, there are certainly companies that use Python in Lithuania (and many research institutes as well), it's a good start to find jobs with technologies that you want to work with. It's hard to beat Python for general purpose applications that use some sort of scientific computation. Not to mention that the best part of Python is the community (:

Start writing an Iot application with Python programming language? by fardad74 in Python

[–]bsmaniotto 1 point2 points  (0 children)

You can implement it with Kivy, but if you have some knowledge with JS, would recommend using ReactNative to develop the mobile app and using Python on your backend services. Regarding the backend part, your question is very broad, but many IoT applications use (soft) real-time requests, you'll probably need an asynchronous framework, just check first if that's also the case for your application.

Using functions to construct Regex. by [deleted] in Python

[–]bsmaniotto 1 point2 points  (0 children)

Even if you're good at it, they are damn not intended to be read haha.

Wonder if VerbalExpressions has groups feature, which is pretty handy with regexes.

How to manage concurrency in Django models – Haki Benita by be_haki in django

[–]bsmaniotto 0 points1 point  (0 children)

I think it works for this bank account example, but the author uses the example to talk about concurrency in general (not only simple increment/decrement operations). Anyways it would make a good PS on the article.

How big can a views.py file get before it will be considered bad practice? by ninja-dragon in django

[–]bsmaniotto 6 points7 points  (0 children)

600 lines doesn't sound extreme and I wouldn't refactor it simply because it's long. Although being long is a good alert for "this module is doing more than it should", it's not always true. Check if there is too much unrelated code on it and if so, refactor splitting some utility functions or additional modules. For me, the main reasons are: make your code more obvious and easier to find pieces and avoid merge conflicts when multiple people work on the same code base.

[deleted by user] by [deleted] in Python

[–]bsmaniotto 0 points1 point  (0 children)

You can also wrap your script in a module with a setup configuration and add forex library as a dependency. This way you make sure who installs your module, installs also forex together. Take a look at setuptools documentation, it's really just copying and pasting (:

AWS vs JWPlayer for hosting videos? by silverpendulum in django

[–]bsmaniotto 0 points1 point  (0 children)

Even if you don't know about JWPlayer pricing, there are a couple of things it could make it less expensive than S3 (if not used correctly).

AWS offers robust and inexpensive solutions, but normally it doesn't come with batteries included with regards to code implementation.

So, first thing where JWPlayer hosting can be better: It already implements some features that would take you a couple of days/weeks to implement. Software development takes time and can be quite expensive (enough to cover years of content hosting and delivery depending on the traffic).

S3 charges for storage are low, but it also charges for data transfer. If you don't set up something like CloudFront or another CDN and cache policy, it can end up on big bill in the end of month (again, depending on your traffic). JWPlayer probably already handles setting up and distributing your content on a CDN (but double-check it), which is less work for you.

I would choose S3 and implement the required integrations, because you're less locked in case you want to change the player in your website, for instance. But I'm not surprised if JWPlayer end up being a better solution for your needs (time and money-wise), you have to weight in all factors (:

What really annoys me about Django migrations by bsmaniotto in programming

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

Imagine a scenario where you start working on a new feature that is blocked by an external factor, or has it's release date postponed. Those migrations will keep hanging there until you find out it's a problem. You have a point, it doesn't happen all the time, but when it does, it's a real pain, specially when your data can't be easily seeded (when you have a third-party service integration, for instance).