Author: admin

  • Memo 41: Be aware of Risks, Transportation and Site Costs when making changes

    Engineer says, make the change to a little cleat.

    And then fabricate. No need to re-submit for stamping.

    But should you?

    Just a little cleat?

    Except it’s on the end of a 15m beam.

    What’s the problem with that?

    • 15m beams are not standard size.
    • They need to be placed on oversized trucks. Trucks ain’t cheap.
    • This means that they they can only be transported outside business hours – big trucks will slow down traffic.
    • Also you need a special crane to lift such large beams into place. They ain’t cheap: $600 per hour. And remember, you cannot just hire it for one hour, you have to hire it for an entire day / week.
    • If there’s a problem with the cleat, then you might find it difficult to fix on site. This means you have to bring the beam back down to the ground. Where are you gonna keep it?
    • Are you going to send the truck away? Of course not – you’ll need the truck.
    • And you’ll need the crane for an extra day.
    • And you’ll need to pay overtime rates.

    ……..so the question is, if something goes wrong, who’s carrying the can?

    What should you do?

    Make sure everyone’s on the same page. Seek an approval from the engineer. When everything’s fine, then party keeps going. But when there’s a mistake, and huge costs, and liquidated damanges, fingers will be pointed.

    Make no mistake, they want you to carry the can.

  • Memo 40: What is your job as a detailer? Is it to simply do what the engineers said without question?

    Memo 40: What is your job as a detailer? Is it to simply do what the engineers said without question?

    Typically you receive

    • engineering drawings
    • architectural drawings

    And using them, you must make shop drawings.

    You must consider:

    1. Buildability
    2. Any applicable standards (Australian Standards).
    3. Transportability
    4. Erectability
    5. Risks / Complexity
    6. How to minimise work/labour,
    7. and minimise costs to your fabricators
    8. …. and remember: concrete is NEVER where it should be. It is NEVER poured correctly. When concrete is involved, you will typically need site measurements.

    Key Issues:

    1. Engineers and architects often make mistakes,
    2. and/or present unworkable designs
    3. or expensive / complicated details.
    4. ……..they are not an authority figure.

    You must question everything they suggest.

    Everything you see must pass the “smell test”.

    Do not put something ridiculous on the drawings simply because the engineer wrote it on HIS drawing.

    Your job is to apply your judgment to the engineering and architectural drawings and produce something which can be built quickly and efficiently by your clients.

    If you see an engineering design that is questionable, you must question it:

    DO NOT ever say to your client: “but it was on the engineering drawings”

    That is not an acceptable answer.

  • Memo 39: Remove any reference to “hourly billing” and expose prices to staff

    Memo 39: Remove any reference to “hourly billing” and expose prices to staff

    • Today marks the day we are completely moving away from the “hourly” billing model. In other words, we are no longer billing clients “by the hour”.
    • Secondly we are fully exposing our pricing to our staff.

    Why?

    1. Because client do not care how long it takes for you to do something. Whether it takes 10 hours vs 12 hours is irrelevant to them: all the client cares about is cost, and quality, and value.
    2. Client do not pay for hours. They pay for solutions.
    3. Clients want solutions NOW, rather than 10 hours later. So if you can give them something valuable NOW, then charge for it!

    And the ironic thing? We always quoted fixed prices

    • We never billed by hours. We always quoted fixed prices, but the problem was that we rationalised those prices in terms of hours. I felt that clients often got confused when they saw “hours” on the “approval emails” versus rationalising them as fixed costs. I also felt that they may have gotten them confused with those prices as being estimates. Our latest policy change makes everything explicit.
    • Occasionally, some clients argued that the “hours” were “too expensive”………. Most clients, initially did not appreciate the value of this model. All of our clients now do. There were two who did not – they are no longer our clients. We amicably parted.
    • e.g. if we charged our client $1000 and then reasoned to the client: “but we took 10 hours” then that would average out to be “$100 / hour” which might be acceptable to the client. However, if it took us 5 minutes, because we had a special tool to speed up the process, then how should we charge our client? For 5 minutes? No we should perhaps charge at least $1000 plus a premium for delivering it super fast. Clients value speed, especially if an entire workforce is sitting on the factory floor, twiddling their thumbs.
    • It prevents arguments. I have wasted so much time with clients arguing and haggling endlessly about $100. No more. Once we put the price, then that is the price. There are no hours to haggle over anymore.

    Exposing Prices

    • Our leadership always felt apprehensive about exposing pricing to staff. Why? Because staff may not appreciate the huge costs associated with running a going concern operation. For example, $100 entails: taxes, exchange rates, licenses, cloud services, and significant administration costs. Staff do not see that cost. But they may think that “they are getting ripped off”. Nothing could be further from the truth.

    We’re going Fixed Pricing All the Way

    ….and we’re completely getting out of the business of mentioning hours.

    Is it a risk? Yes.

    Is it a big risk? No.

    What should you do?

    Normally you would quote your hours on the “cost justifications” field:

    Break down of hours: why so many?

    • Time required for model amendment: 3 Hour
    • Time required for GA drawings: 1.5 Hour
    • Time required for assembly drawings: 1.5 Hour
    • Total Variation Claim: 6 Hours

    We are not going to be doing this any more. So do exactly what you did above, but remove the hours quoted:

    Cost Justification

    • model amendment.
    • GA drawings amendment.
    • assembly drawings amendment.
    • Checking of everything.
    Notice how we do not mention hours anymore?

    Lastly, you must still enter the hours you take. But note – we are no longer exposing this to clients:

  • Drawing Stamped Not Satisfactory

    When drawing is stamped as ‘NOT STATISFACTORY’ RFI should be raised as to whether we update markups and submit as IFC or do we resubmit

  • How to Get Tekla Model Objects if selected by Users (Tekla API)

    How to Get Tekla Model Objects if selected by Users (Tekla API)

    A user has pre-selected a set of model objects.

    We need to retrieve them via the API. How do we do it?

    All of our code is extracted from our production apps.

  • ByCoordinateSystems (i.e. the Tekla API method)? AlignCoordinateSystem (the AutoCAD .net API method)? What are they? What do they mean?

    What problem does it solve?

    I have some treasure, buried somewhere.

    I know how to get there from my town.

    • Go 10km forward, and then 5 km left, and then 2 km right.
    • Walk forward 10 steps, and now
    • dig.

    This is great from my current location. But how will you get there from YOUR location? Without changing the location of the treasure, I can tell you how to get there, from your location by aligning coordinate systems.

    But it can be confusing. Here’s how I think about it intuitively. Forget the maths, just think about it intuitively.

    Consider both examples:

    If you think about it that way, it will be much harder to get confused.

  • How to programmatically filter model objects, in a Tekla model, by Part Position? (Tekla API)

    How to programmatically filter model objects, in a Tekla model, by Part Position? (Tekla API)

    Suppose you have a Tekla model and you want to programmatically filter for parts with a revision mark of abc/1. How would you do that?

    1. One way would be to iterate through the entire model, check for items which match your condition (perhaps via a LINQ query).
    2. The second would be to use Tekla’s native filtering metchnicsms, which seem to be FAST:

    When I originally tried the code, I had a single Binary Filter expression for just the part Position Number. I made a fatal mistake – I had assumed that Tekla would be smart enough to release that given I want a part position number, I also wanted a part. The API returned almost everything under the sun. And I have no idea why. So then I added a second Binary filter expression – this time one for parts.

    Given we have two “filters”, we need to add them into a filter collection, and then finally, when we search, we search by .GetObjectsByFilter(filterCollection).

    Here is the code:

  • Memo 38 – Easy way to improve your english

    Most staffers in this firm have very poor English ability.

    English is a universal language. It is a very valuable skill. If you don’t want to improve your language (and I know some don’t want to, nor do they care) then you will very significantly limit your earning potential.

    Clients demand good communicators – especially with written English.

    An easy way of improving is via: MIRRORING.

    • Listen to an English show.
    • REPEAT what the actors / news readers are saying verbatim, after they say it.
    • You will feel like a parrot, but after some time, you will establish new patterns of speaking

  • Memo 37 – Clients will have the option of choosing their preferred detailer

    Clients can nominate their preference. But why?

    This is a proposal for a change in the process at Tek1.

    I propose from now on a client to be able to nominate their detailer, if they have a preference. (FYI – this is now happening anyway, whether you like it or not).

    Benefits?

    • Building brands: It incentivises detailers to promote their own brand, in order to get clients in the door. If a client specifies Freddie, then if possible the client will get Freddie.
    • Pricing and Bonus Benefits: What if many clients demand Freddie – but Freddie is busy? Freddie can his price: he raises his bonuses so that the market clears. Freddie will be very happy.

    Clients may want to choose, and pay for the privilege. Detailers get better bonuses. And detailers will want to win clients. If it doesn’t work there is no loss. This is a stable system because everyone wins. There are no losers.

    Background Context:

    Clients are like common village bicycles – Not Any More

    • We don’t want to share clients among too many detailers. If you win a client, then you will be much more likely to get jobs from that client.
    • When a new job comes in – detailers will not be incentivised to lobby me in order to win that job. You can lobby and convince the client directly with high quality work, and with technical posts demonstrating your ability.
    • We want to change the attitude that clients can be shared. We want detailers to take ownership of a particular client. Because I strongly believe that you will take better care of your own property (i.e. your client), than someone else’s property or client.
    • But if the property is common: then why should a detailer care about a particular client? What is he to gain and lose? If he is sloppy, or drags his feet – then a detailer might think: ‘no problem, another client will come. And I will get that client’. If you are sloppy with your current clients, how can you be trusted with new ones?
    • Perhaps a detailer might think that clients are like a bus or train service – another bus will come, even if he misses this one. And that he doesn’t have to do any work in order to get a client in the door?
    • This is a dangerous assumption. What if no busses come? What if this was there is ONLY ONE BUS, i.e. one plane ticket out there? Then you can be damned sure that he will be running to catch that plane.

    If a client is unsatisfied with a detailer, what is the outcome?

    • The client dismisses Tek1 entirely. The client does not say: “ok, this particular detailer was dragging his feet. But let me continue with Tek1 under a different detailer”. No. The client says instead: “I’m firing Tek1”.

    Tek1 Branding and Detailer Branding:

    • There are two brands are play now: the firm’s branding, the detailer’s branding. We want to bring a detailer’s brand and reputation to light. Now he has a sense of ownership over his own product / destiny. And he will fight hard to develop it and protect it. And when an individual fights hard for his brand, then both the detailer and the firm benefit.
    • Take for example a similar problem in the “fight business”. In the boxing world: nobody would dare pre-purchase a ticket for a boxing match, without knowing in advance who the card is. But under the UFC promotion, they are happy to take that risk, because they trust the UFC brand will put on a good card, with a good show, regardless of who is fighting. It is the same with Tek1. When a client walks into the door, he wants a good quality product, regardless of who is on the card. But if the client can go one step further – if the client can choose the card, then that changes the game. This allows the client to customise exactly what he wants to see, and whom he wants on his projects. Imagine if consumers can choose who they want to see fighting: “Connor vs ABC”. That changes the game, and it changes the incentive structure.
    • It unlocks additional value that was not originally there. Detailers are now incentivised to compete with external detailers on the promotional level. If they want to win lucrative bonuses, and have a bigger stable of clients knocking on their door: then they are much more incentivised to promote their name and brand through any means at their disposal:
      • TikTok or
      • Blog Posts or
      • Any number of means which I need not specify up front.
      • Anything which would bring clients to Tek1’s door, and then to their door. The important part is that Tek1 need not specify HOW to promote, and need not manage the quality per se. The detailer’s initiative will drive positive outcomes.

    How does the client choose a detailer?

    • If a client has to choose a detailer, how will he do so?
      • By past performance.
      • By reviewing promotional material – material which demonstrates a detailer’s expertise. Detailers will be incentivised to promote here. Detailers who don’t promote – then they will likely not win any more clients. And if you don’t get clients, then you’ll be sitting idle. And I don’t think you want that outcome.

    What if the client does not know whom to choose?

    • That’s fine. We will choose for him.