Best laid plans
Created: November 16, 2018
No plan survives contact with the enemy, and today the enemy was my 15-year old car. I had every intention of having a shiny new Subrecord video for you all today, and then the rear brakes went out on my car, so I've had to spend the day dealing with that instead.
Despite our best intentions and our most detailed plans, no matter how many
years of experience we have, life will always have wrenches and curveballs and
brake jobs to throw at us, and so will SuiteScript. No matter how much you study
or how much you build, NetSuite and SuiteScript will always surprise you. There
will always be a new error or an UNEXPECTED
one; NetSuite's features and
designs and APIs are in a constant state of change. It can be maddening!
It can be, but it doesn't have to be. I am a firm believer in learning and mastering the basic foundations and concepts. These will always serve you much better than the flavor-of-the-week JavaScript technique or some cool hack you found in a Stack Overflow answer. The stronger our foundation and the more consistent habits we develop around that foundation, the larger and more impressive things we'll be able to build on top of it.
Maybe I'm rambling; the point is that learning the foundational concepts like
NetSuite's data model, its Script types, its event triggers, and establishing
consistent, healthy patterns for common tasks and troubleshooting will make you
a much, much better and less frustrated SuiteScript developer in the long run.
It doesn't pay to memorize the methods of the N/runtime
module if you don't
understand what a Script Parameter is.