Paveł Tyślacki
@tbicr
DataRobot
I want to show that popular projects contributing is easy and skills you will get are useful for professional grow
class MienskPythonMeetupModel(models.Model):
class Meta:
constraints = (
models.CheckConstraint(
name='age_gte_18',
check=models.Q(age__gte=18)),
models.UniqueConstraint(
name='draft_for_user_uniq',
fields=['user'],
condition=models.Q(status='DRAFT')),
)
indexes = (
models.Index(
name='non_migrated_idx',
fields=['migrated'],
condition=models.Q(migrated=False)),
)
promotion of my lib for django: https://github.com/tbicr/django-pg-zero-downtime-migrations
Other changes
Highlight form django contributor:
Refactoring:
UniqueConstraint was already exist
Index already had conditional parameter
Same message as index_together has
./tests/runtests.py migrations --parallel=1 --reverse
UniqueConstraint was already exist
Index already had conditional parameter
class MienskPythonMeetupModel(models.Model):
field = models.CharField(unique=True)
class Meta:
unique_together = [['field']]
constraints = (
models.UniqueConstraint(fields=['field']),
)
Introspection are used in migrations
SQL parsing
small changes - easy to merge
huge changes - hard to merge
monkey job to start with new project with huge codebase
you will get review from good engineers
it's stressful but stress can be catalyst for growth
don't hate django if it doesn't have some feature
just create issue and propose PR
Business want to get value, go fast and minimize risks
be sure that other engineers keep performance with you
be sure that other engineers will be happy to work with you
be sure that you can handle issues
be sure that you can handled issues in reasonable time
be sure that you can avoid similar issue in future
will be happy if you will bring good or best solution
will be happy if you are supper productive
will be happy if you will bring new opportunity or value
will be happy if you have positive impact to other engineers
f(t) = time spent to one skill (python, django or other)
\( f(t) = \Huge\sum\normalsize\begin{aligned}&~~\mathrm{python, framework, programming, algorithms, logic, math} \\&~~\mathrm{knowledge, OS, network, git} \\&~~\mathrm{english, soft skills, interview skills}\end{aligned} \)
skills grow
you can show something
decrease risks for business
increase interest for business
I want to show that popular projects contributing is easy and skills you will get are useful for professional grow
Paveł Tyślacki
@tbicr
DataRobot
For best django contributing until next meetup announce
Prize:
The Pragmatic Programmer eBook
Rules: