I have a custom Python package on my project where some functionality implemented on Cython. We use it to speed up some of the slowest parts of our code - the syntax is pretty close (it can be identical except some imports) to regular Python. Cython compiled to .so libraries and it has support for fast access to NumPy arrays. The problem - Cython and numpy packages need to be installed before...
Tue Jan 08 2019 |
2 minute read
Most people do not know how to adequately assess the timing of tasks. Oh, how it makes them sometimes nervous ... Here, and "deadline sneaks up unnoticed." And they are reinsured for over 500% just in case (still not enough). And managers trying to squeeze "knowingly bloated deadlines," so that they can promise something more acceptable(common management disease). And vague muttering instead...
Mon Dec 24 2018 |
6 minute read
A simple post about the distinction between customer problem, created product and architecture solution. This is a problem: Problem is defined by customer functional and non-functional requirements. This is a product: A product is a defined set of features or capabilities that are used “as-is” directly by an end user. This is a solution: A solution is the application of one or more products to...
Sat Dec 15 2018 |
1 minute read
Software Development Principles — it is a number of specific rules and recommendations, which engineers need to be followed during program implementation if they want to write beautiful, understandable and maintainable code. There is no magic wand, by which you can transform a mixture of variables, classes and functions into the ideal code, but there are some tips and hints, which can help the...
Wed Dec 12 2018 |
7 minute read
Imagine that you are developing software for the big shipping company(why would you imagine small anyway). And you got a task to create a function for calculating a charge for ships based on their cargo weight. Easy breezy: WEIGHT_RATES = [ ( 10, 10.55), ( 5, 5.05), ( 2, 3.35), ( 0, 1.25) ] def shipping_charge(weight): if weight < 0: raise ValueError("Can't calculate shipping charge of...
Thu Dec 06 2018 |
2 minute read
We all know that senior is not just a technical role that bound with years of experience and knowledge about his tools, they also have mentoring skills, some management skills in order to measure tasks and their time, and they tend to have some architecture skills etc. My questions here is only for technical side of Python senior developers. Questions Q: When will the else part of...
Sun Dec 02 2018 |
3 minute read