The last part is why you use an IDE.
Several of them will ingest prettier files to build code formatting rules
IDE support is normally a good way to work out what the wider community is using.
Python is unique in formatting forms part of the syntax, every language has linters but its far more common for orgs to tweak the default rules .
For example Java has Checkstyle. The default rules ‘sun checks’ give a line length of 80, tabs are 4 spaces and everything is placed on a new line.
Junior devs inevitably want to trash the line length (honestly on 1080p monitors, 120 makes sense,).
There is always a new line/same line discussion (everyone perfers same line but there is always one die hard new line person).
The tab width discussion always has one junior dev complain that “tabs are better”, as someone who started development on Visual Studio 6 where half the team double spaced, the other half used tabs. Those people get a lecture from me on how we can convert tabs to spaces but not the inverse so it will always be spaces if I am near.
With Checkstyle you upload the rule file as an artifact into your M2 repository. Then you can pull it down as a dependency when the checkstyle plugin runs.
I avoid any company that requires a software test before the interview.
I worked for a company that introduced them after I joined, I collected evidence all of the companies top performers wouldn’t have joined since we all had multiple offers and having to do the test would put people off applying. The scores from it didn’t correlate with interview results so it was being ignored by everyone. Still took 2 years to get rid of it.
The best place used STAR (Situation Task Action Result) based interviews. The goal was to ask questions until you got 2 stars.
I thought these were great because it was more varied and conversational but there was a comparable consistency accross interviewers.
You would inevitably get references to past work and you switch to asking a few questions about that. Since it was around a situation you would get more complete technical explanations (e.g. on that project I wrote an X and Y was really challenging because of Z).
I loved asking “Tell me about something your really proud off”. Even a nervous junior would start opening up after that question.
After an hour interview you would end up with enough information you could compare them against the company gradings (junior, senior, etc…).
This was important because it changed the attitude of the interview. It wasn’t a case of if the candidate would be a good senior dev for project X, but an assessment of the candidate. If they came out as a lead and we had a lead role, lets offer them that.
Basic rule if someone claims X magically solves a problem they don’t follow X and are a huge generator of the problem.
For example people who claim they don’t need to write comments because they write self documenting code are the people that use variable names x1,x2,y, etc…
Similarly anyone you meet claiming Test Driven Development means they have better tests will write code with appalling code coverage and epically bad tests.
The butler informed me Kinder Eggs don’t make a nice pyramid, Lindt doesn’t stack and suggested I would offend her ladyship if I tried Heroes.
I have the staff practicing making a house of cards using After 8’s, the butler thinks its something those terrible colonialists would try but he sees no other option
One type of sweet!
Candy is the generic American word for sweets. American’s think chocolate should include stale milk and use Fructose! (cancer causing, obesity driving) Fructose in everything.
One could easily argue American candy has nothing in common with UK sweets (have you tried an American Kit Kat?).
Its like serving a German a Richmonds sausage, they’ll get confused.
Thats two hundred years and would cover the end of Plantagenet reign and the Tudor era.
Henry VIII reign happened during that period, at the beginning of your time period everyone would be catholic and at the end Queen Mary of Scotts was executed because the idea of a Catholic on the throne was unthinkable.
The UK is littered with castles and estates, normally they focus on specific historic events which happened at that location.
Using real world applications is changing the problem (what are you trying to solve).
My issue is teaching how you solve the problem.
As an example the indian method to teach multiplication is to draw lines equal to the first number, then perpendicular lines equal to the second and then count the points they bisect (e.g. draw 3 horizontal and 3 vertical lines and they cross 9 times).
Lastly I coach people in Agile (its a way of delivering stuff). An Agile team is brought together because a Product Owner has a problem and a vision on how to solve it.
The biggest factor in motivating a team and getting high performance is the product owners passion for their vision. You can have the most interesting problem in the world, if the product owner doesn’t care neither does the team.
I suspect the same is true of teaching
Not really.
There are multiple ways to approach and conceptualise multiplication, division, simultaneous equations, binomial distribution, probability, etc…
I have met a few maths geniuses and we teach Maths the way they think and conceptualise Maths.
In my last job I was viewed as a superstar because I could take the algorithms the data scientists produced and explain them to non data scientists.
I didn’t change the underlying maths, I tailored what to explain and examples to use based on my audience. This tended to get people really excited at what the data scientists had done.
Its the same with teaching, people need to understand and conceptualise a problem in a way that makes sense to them.
The issue is we only teach one method for approaching Maths so if you don’t get it, tough.
In primary and secondary school I always struggled with Maths. During university I spent most of my energy reverse engineering the maths lessons so I could understand them.
Years later my sister was struggling with her Maths GCSE, I spent one evening explaining how I solve each type of problem. She went from a projected D to getting an A.
I was explaining this to an ex maths teacher who started asking how I approached things. Apparently I used the Indian method for one type of problem, the asian for anouther, etc…
The idea a student was struggling with one way of solving the problem and teaching them alternative methods never occurred because it was “outside the curriculum”.
These days I quite like Maths puzzles.
This advice isn’t grounded in reality.
Management normally defines ways to track and judge itself, these are typically called Key Performance Indicators.
KPI’s are normally things like contract value growth, new contracts signed, profit margin, etc…
So if the project manager is meeting or exceeding their KPI’s and you walk up to their boss telling them the PM is failing as basic job functions, the boss won’t care.
This is because the boss might have set the KPI’s or the boss might also be judged on them. In either situation its to the bosses advantage to ignore you.
The boss will only care if there is a KPI you can demonstrate the PM failing to meet.
Every person/group will have various incentives and motivations. To affect change you have to understand what they are.
Wikipedia lists all 12 subs as having Rolls Royce Pressured Water Reactors.
Your PWR reuse idea is is kind of where Rolls Royce is looking to go with Small Modular Reactors (https://www.rolls-royce.com/innovation/small-modular-reactors.aspx).
I suspect refurbishing decades old PWR reactors would be far more expensive than just building new ones, for example a SpaceX Merlin engine costs $1 million and a Blue Origin BE-4 costs $15 million. Nasa argued it would be ‘cheaper’ to reuse Shuttle components for the Space Launch System (SLS). Refurbishing Shuttle RS-25 engines has cost Nasa $50 million dollars per engine, restarting a production line is costing $100 million for each new RS-25 engine.
A project manager has responsibility for delivery of a project but they typically lack domain specific knowledge. As a result they can’t directly deliver something, merely ask subject matter experts for advice and facilitate a team to deliver.
Most PM’s cope with the stress of this position poorly.
This cartoon is an example of micro management (a common coping mechanisim), the manager has involved themselves in the low level decisions because that gives a sense of control. If a technical team then tell them its a bad decison the team are effectively attacking their coping mechanisim.
The solution isn’t to tell them their technical idea is terrible, when you’ve fallen down this rabbit hole you have to treat the PM as a stakeholder. They are someone you have to manage, so a common solution is to give them confidence there is a path to delivery, a way to track and understand it.
Because the Tories have upset everyone internationally, so it isn’t really an option. If you’ve been paying attention the EU has been playing a bunch of jobsworth type games with the UK.
Notice how he will do this in 2025, when the current agreement is up for renewel rather than immediately.
You also have the fact rejoin isn’t winding the clock back to 2016, firstly we would loose all of our opt outs, things like the rebate, the euro, etc… I don’t think the reality would actually be popular.
Secondly the UK blocked a number of things like the EU Army (personally I think its a terrible idea, countries that don’t spend enough looking to combine to “save” money) so it isn’t the same EU.
Lastly see above mentioned jobsworth behaviour, I would not be surprised if the EU demanded the UK to complete all the paperwork of a new joiner and drag the process out as long as possible (it takes ~10 years for most countries).
Far better to put the UK on a stable footing and then ask if EU membership is something the UK still wants. It took the 13 years to get to this point, so its unlikely everything will be fixed during the next government. So why bring something like rejoining up?
Both the US and UK define a biscuit as a small unleavened cake.
For some reason US folks call all but one type of small unleavened cakes “coookies” which is a specific type of biscuit.
It would be like calling all beer “stout”.
Thats just national pride talking,
Personally I think Plymouth’s Pasties are superior to all other pasties (Ron Dewney for the win) and love them. But a pasty can only be so good and I accept people wouldn’t put it in a S tier for food.
Another example is Americans claiming Jack Daniels is the best whiskey.
During the pandemic I had some unoccupied python graduates I wanted to teach data engineering to.
Initially I had them implement REST wrappers around Apache OpenNLP and SpaCy and then compare the results of random data sets (project Gutenberg, sharepoint, etc…).
I ended up stealing a grad data scientist because we couldn’t find a difference (while there was a difference in confidence, the actual matches were identical).
SpaCy required 1vCPU and 12GiB of RAM to produce the same result as OpenNLP that was running on 0.5 vCPU and 4.5 GiB of RAM.
2 grads were assigned a Spring Boot/Camel/OpenNLP stack and 2 a Spacy/Flask application. It took both groups 4 weeks to get a working result.
The team slowly acquired lockdown staff so I introduced Minio/RabbitMQ/Nifi/Hadoop/Express/React and then different file types (not raw UTF-8, but what about doc, pdf, etc…) for NLP pipelines. They built a fairly complex NLP processing system with a data exploration UI.
I figured I had a group to help me figure out Python best approach in the space, but Python limitations just lead to stuff like needing a Kubernetes volume to host data.
Conversely none of the data scientists we acquired were willing to code in anything but Python.
I tried arguing in my company of the time there was a huge unsolved bit of market there (e.g. MLOP’s)
Alas unless you can show profit on the first customer no business would invest. Which is why I am trying to start a business.
deleted by creator
This is why Java rocks with ETL, the language is built to access files via input/output streams.
It means you don’t need to download a local copy of a file, you can drop it into a data lake (S3, HDFS, etc…) and pass around a URI reference.
Considering the size of Large Language Models I really am surprised at how poor streaming is handled within Python.
This is about thew new starter cost.
When a developer joins a team, they will not be as productive as they have to learn the code, frameworks, libraries, the project purpose, the tooling, etc… Often this impacts other members of the team lowering the entire teams productivity.
When you use productivity tracking (e.g. things like capacity planning) you will see the teams performance drop and it will take time for it to exceed the previous measured performance. This is the cost of adding a new starter.
So if it takes 6 weeks for a new starter to increase overall team producitivty then planning someone on a project for 4 weeks is pointless since the team will have a higher delivery rate without the extra person. This is typically why an organsation loses its ability to migrate staff between projects.
Code formating affects the layout of the code and our brains do all sorts of tricks around pattern recognition, so if your code formatting rules are too different a someone migrating between projects has to spend time looking for code and retraining their brain.
Its an additional barrier and a one within an organisations skills to remove (by forcing a common code standard).