Owen Wengerd has done it again. He's updated his free utility for killing InfoCenter for AutoCAD 2013. Get it here: http://otb.manusoft.com/2012/03/turning-off-infocenter-in-autocad-2013.htm?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+obox+%28Outside+The+Box%29
Saturday, 31 March 2012
VLDB Code Example: Reload Profile From .ARG
Posted on 08:25 by Unknown
Another set of code from Chapter 19, of my book "The Visual LISP Developer's Bible (2011 Edition)" available on Amazon for Kindle and Kindle Reader apps. This one reloads an existing AutoCAD Profile from a source .ARG file. As you may know, if you load an .ARG file, it is imported into the Registry. Each time you launch AutoCAD, if the shortcut or command line specifies /P to specify a Profile (even a full path to an .ARG file) if a Profile already exists (by the same name) in the Registry, the .ARG file is ignored and the Profile is loaded from the Registry. This is pretty much the same way a web browser cache works when loading stored images. If you want it to force a reload from the source .ARG file, here's one way to do it...
http://sites.google.com/site/visuallispbible
Copyright ©2002-2010 David M. Stein, All Rights Reserved.
;;; Reloads a profile from an ARG fileThe Visual LISP Developers Bible – 2011 Edition
;;; Replaces existing profile if defined
;;; Returns profile name if successful, otherwise returns nil
(defun Profile-Reload (name ARGname / bogus)
(cond
( (and
(Profile-Exists-p name)
(findfile ARGname)
)
(if (/= (strcase name) (strcase (vla-get-ActiveProfile (AcadProfiles))))
(Profile-Delete name)
(progn
(setq bogus "bogus")
(Profile-Rename name bogus)
)
)
(Profile-Import name ARGname)
(vla-put-ActiveProfile (AcadProfiles) name)
(if bogus (Profile-Delete bogus))
name
)
( (and
(not (Profile-Exists-p name))
(findfile ARGname)
)
(Profile-Import name ARGname)
(vla-put-ActiveProfile (AcadProfiles) name)
name
)
( (not (findfile ARGname))
(princ (strcat "\nCannot locate ARG source: " ARGname)) nil
)
)
)
;;; Renames an existing profile
;;; Returns new profile name if successful, otherwise returns nil
(defun Profile-Rename (from to / result)
(if (Profile-Exists-p from)
(if (not (Profile-Exists-p to))
(cond
( (not
(vl-catch-all-error-p
(setq result
(vl-catch-all-apply
'vla-RenameProfile
(list (AcadProfiles) from to)
)
)
)
) to ; Return new name if successful!
)
)
)
)
;;; Deletes an existing profile
;;; Returns T if successful, otherwise returns nil
(defun Profile-Delete (strName / result)
(if (Profile-Exists-p strName)
(cond
( (not
(vl-catch-all-error-p
(setq result
(vl-catch-all-apply
'vla-DeleteProfile
(list (AcadProfiles) strName)
)
)
)
)
T ; return T for success!
)
)
)
)
;;; Imports a profile from a given ARG file
;;; Returns profile name if successful, otherwise returns nil
(defun Profile-Import (argFile strName / result)
(cond
( (findfile argFile)
(cond
( (not
(vl-catch-all-error-p
(setq result
(vl-catch-all-apply
'vla-ImportProfile
(list (AcadProfiles) strName argFile vlax-True)
)
)
)
)
strName ; return new profile name if successful!
)
)
)
)
)
;;; Determine if profile name is already defined (exists)
;;; Returns T or nil
(defun Profile-Exists-p (name)
(get-item (AcadProfiles) name)
)
;;; Return Profiles collection object
(defun AcadProfiles ()
(vla-get-profiles (vla-get-preferences (vlax-get-acad-object)))
)
http://sites.google.com/site/visuallispbible
Copyright ©2002-2010 David M. Stein, All Rights Reserved.
VLDB Code Example: Purge All Opened Drawings
Posted on 08:10 by Unknown
This little chunk of code will run a Purge on all drawings currently opened in your editor.
(defun AllDocs-Purge ( / docs)
(vlax-for dwg (vla-get-Documents (vlax-get-acad-object))
(vla-PurgeAll dwg)
)
)
Wednesday, 28 March 2012
Windows 8 - What I Think About It
Posted on 20:51 by Unknown
Your first thought was probably: "Who cares?"
Exactly. But in case you might, here's what I think of it thus far:
It's aimed at consumers. Nothing Earth-shattering about that. Everyone else is already saying that too. But it's not just that. It's that it is suffering from a similar problem with Windows 7 in the early days: Marketing Stupidity.
That's right. Most people don't recall how feeble the business marketing effort for Windows 7 was at the start. It was entirely aimed at home users. All the ads were about how easy it was for kids to use, and how cool it looked. IT professionals, meanwhile, were left to scramble for their own devices when it came to rounding up a business case to sell to their management for getting away from XP. It wasn't pretty.
Windows 8 is doing the same thing. All the marketing artillery is lobbing shells at the consumer side. Tablets and Metro and Apps Market, and more Tablets, and Cloud this and Cloud that. When the CIO and CFO pull up a chair and ask: "Ok. What the fuck about this Windows 8 is going to make us a better company?"
Most of us will say "Well... uh.... umm..... I'm still looking into that."
Fwamp Fwamp Fwamp...
Here's what Windows 8 needs to have before I could get behind any effort to woo the CFO to stroke a big check to embark on yet another upgrade project (remember, many businesses are still in the midst of a Windows 7 upgrade effort):
Exactly. But in case you might, here's what I think of it thus far:
It's aimed at consumers. Nothing Earth-shattering about that. Everyone else is already saying that too. But it's not just that. It's that it is suffering from a similar problem with Windows 7 in the early days: Marketing Stupidity.
That's right. Most people don't recall how feeble the business marketing effort for Windows 7 was at the start. It was entirely aimed at home users. All the ads were about how easy it was for kids to use, and how cool it looked. IT professionals, meanwhile, were left to scramble for their own devices when it came to rounding up a business case to sell to their management for getting away from XP. It wasn't pretty.
Windows 8 is doing the same thing. All the marketing artillery is lobbing shells at the consumer side. Tablets and Metro and Apps Market, and more Tablets, and Cloud this and Cloud that. When the CIO and CFO pull up a chair and ask: "Ok. What the fuck about this Windows 8 is going to make us a better company?"
Most of us will say "Well... uh.... umm..... I'm still looking into that."
Fwamp Fwamp Fwamp...
Here's what Windows 8 needs to have before I could get behind any effort to woo the CFO to stroke a big check to embark on yet another upgrade project (remember, many businesses are still in the midst of a Windows 7 upgrade effort):
- A "Windows 7 Classic" theme, that looks EXACTLY like Windows 7. For businesses to roll-out onto their already shell-chocked XP-to-7 users. Then we can shift to Metro later when the Xanax runs out.
- A native App-V client included in the base product. App-V is cool, but I'm really sick of how hamstrung it is within MDOP and EA/SELECT and it's really holding back a lot of potential. Sick isn't the word. Disgusted is more like it.
- A native MED-V feature as an option. My feeling is the same as described for App-V.
- A better approach to COM activation than DCOMconfig.
- A better solution to keep the Registry clean
I'm stopping here because, although I could go on (much longer), it would behoove myself to just say it needs to offer a wide range of improvements to literally make Windows 7 seem as outdated as 7 did for XP. Right now, it's not there. Windows 8 is a minor step from 7 in most respects. Sure, it's got a lot of cool stuff and a new UI, but from a ROI perspective, you really have to dig like a starving animal in the desert to find enough to build a strong business case for going from 7 to 8. Even from XP to 8 doesn't make as much sense at this point as going from XP to 7. The jury is still out obviously. I'm probably casting my vote prematurely, and I will give it time to mature. I will revisit this argument when it gets closer to final release.
Posted in application virtualization, business, network administration, windows 7, windows8
|
No comments
VLISP Housecleaning: Example 2
Posted on 19:53 by Unknown
Here is another example from my ebook, "The Visual LISP Developer's Bible, 2011 Edition" (Amazon Kindle). This one demonstrates a shell process, whereby the code executes an external COM interface request to use VBscript to perform a simple date calculation.
You can do the same with JavaScript (actually JScript) as well.
(defun daysold (d / sc cmd result)
(setq sc (vlax-create-object "ScriptControl"))
(vlax-put-property sc 'Language "vbscript")
(setq cmd (strcat "DateDiff(\"d\", \"" d "\", Now)" ))
(setq result (vlax-invoke-method sc 'Eval cmd))
(vlax-release-object sc)
(eval result)
)
(setq age (daysold "12/1/2010"))
You can do the same with JavaScript (actually JScript) as well.
VLISP House Cleaning Project
Posted on 19:47 by Unknown
I've said before that I'm pretty much retired from writing books about AutoCAD or AutoLISP/VisualLISP, but I still get e-mail from readers asking for help or to share some code. So, since it's not exactly ideal to make use of the code in my ebooks, I've decided I will post some (not all) of the examples from "The Visual LISP Developer's Bible, 2011 Edition" on my blog over the coming weeks. As time permits, anyway.
To kick this off, here's the example from Chapter 21, exporting a drawing layers table to an Excel spreadsheet using Visual LISP and the COM interface...
To kick this off, here's the example from Chapter 21, exporting a drawing layers table to an Excel spreadsheet using Visual LISP and the COM interface...
(vl-load-com)
(setq acad (vlax-get-acad-object))
(setq activeDoc (vla-get-ActiveDocument acad))
(setq layers (vla-get-Layers activeDoc))
(setq excel (vlax-create-object "Excel.Application"))
(setq workbooks (vlax-get-property excel 'Workbooks))
(princ "\nSetting visible to True")
(vlax-put-property excel 'Visible :vlax-true)
(princ "\nGetting active workbook...")
(vlax-invoke-method workbooks 'Add)
(setq workbook (vlax-get-property excel 'ActiveWorkbook))
(princ "\nGetting active worksheet...")
(setq sheet (vlax-get-property excel 'Activesheet))
(princ "\nRename active worksheet...")
(vlax-put-property sheet 'Name "Layers")
(princ "\nGetting cells...")
(setq cells (vlax-get-property sheet 'Cells))
(princ "\nPrinting column headings...")
(vlax-put-property cells 'Item 1 1 "LayerName")
(vlax-put-property cells 'Item 1 2 "Color")
(vlax-put-property cells 'Item 1 3 "Linetype")
(princ "\nPopulating cells...")
(setq row 2)
(vlax-for layer layers
(vlax-put-property cells 'Item row 1 (vla-get-Name layer))
(vlax-put-property cells 'Item row 2 (itoa (vla-get-Color layer)))
(vlax-put-property cells 'Item row 3 (vla-get-Linetype layer))
(setq row (1+ row))
)
(princ "\nSaving workbook...")
(vlax-invoke-method workbook 'Save)
(vlax-invoke-method workbooks 'Close)
(vlax-invoke-method excel 'Quit)
(foreach obj (list cells sheet workbook workbooks excel)
(vlax-release-object obj)
)
(gc)
(prince "\nDone!")
Tuesday, 27 March 2012
The Mid-Level IT Manager
Posted on 17:00 by Unknown
If you've worked in any industry, you're probably aware of what a "mid-level manager" is. You may also be aware of how subjective the term "mid-level" is, especially as the size of an organization grows. There are often many levels of "mid-level".
The interesting aspect that comes into to play is when people move from a non-managerial level into a managerial position, of any level. I've seen and experienced it, from various angles, in the service industry, construction, engineering, sales, legal, medical and IT organizations. The IT organizational aspects are most interesting to me. Why? Let's digress a bit...
The entire life of most entry-level workers is usually some sort of "hands-on". It was often the sole reason they pursued the line of work in the first place. I'm not counting people that take "any job" because they need a paycheck. Those folks don't typically stick around long enough to move into any managerial roles. The folks that move into management positions are usually "career oriented" rather than "job oriented".
For years, the diligent line worker, systems administrator, programmer, analyst, technician, systems engineer, even systems architect, plies his/her trade and struggles to keep pace with ever-newer technology and trends. Hours and days spent in labs, at home, learning, testing, experimenting. I'd guess on average we spend probably a solid week of our life every year doing things to improve our skills.
Then one day, you're called into an office and asked to close the door. Instead of the expected ass-chewing, you're greeted with a smile and a congratulations. Sometimes bundled with a few solid minutes of accolades and commendations for worthy achievements. Then the punchline: "We want to promote you to Team Lead/Manager, etc." At first you're ecstatic, because you've had a train-load of sunshine blown up your ass with a smile and a hand-shake. They calm your fears about handling the new duties, the paperwork, the meetings, the new agenda. You soak it up over the weekend. You show up on Monday and start picking away at the new world ahead of you. Life moves on.
After a few months you realize you miss working on the things you used to work on. There's a touch of emptiness. A bit of isolation, now that you're working with a new group of people, and your circle of faces is morphing into a new entity altogether. Some might even say it's a sign of depression.
But that's not unique to the IT world.
What I've seen that is unique to the IT world is the extreme level of self-worth tied directly to the "hands-on" achievements. You don't see that in construction. You don't see it at that level in most any other line of work. An IT engineer/technician/programmer/analyst assesses their value by virtue of what technologies they've mastered, what projects they've been instrumental in accomplishing, and how their professional-social (combined) circle values their capabilities. That's right. It's a bit of a vanity and ego twist, but we do very much value what our peers think of our abilities. We absolutely do NOT want to be the guy who gets joked about for screwing things up.
Now that person is asked to step away from that zone, and into an entirely unfamiliar zone. A new zone where self-valuation is based on entirely new skills and new methods of assessment. It's a major shift and it often causes problems for people trying to cope with a multi-faceted group of changes:
The interesting aspect that comes into to play is when people move from a non-managerial level into a managerial position, of any level. I've seen and experienced it, from various angles, in the service industry, construction, engineering, sales, legal, medical and IT organizations. The IT organizational aspects are most interesting to me. Why? Let's digress a bit...
The entire life of most entry-level workers is usually some sort of "hands-on". It was often the sole reason they pursued the line of work in the first place. I'm not counting people that take "any job" because they need a paycheck. Those folks don't typically stick around long enough to move into any managerial roles. The folks that move into management positions are usually "career oriented" rather than "job oriented".
For years, the diligent line worker, systems administrator, programmer, analyst, technician, systems engineer, even systems architect, plies his/her trade and struggles to keep pace with ever-newer technology and trends. Hours and days spent in labs, at home, learning, testing, experimenting. I'd guess on average we spend probably a solid week of our life every year doing things to improve our skills.
Then one day, you're called into an office and asked to close the door. Instead of the expected ass-chewing, you're greeted with a smile and a congratulations. Sometimes bundled with a few solid minutes of accolades and commendations for worthy achievements. Then the punchline: "We want to promote you to Team Lead/Manager, etc." At first you're ecstatic, because you've had a train-load of sunshine blown up your ass with a smile and a hand-shake. They calm your fears about handling the new duties, the paperwork, the meetings, the new agenda. You soak it up over the weekend. You show up on Monday and start picking away at the new world ahead of you. Life moves on.
After a few months you realize you miss working on the things you used to work on. There's a touch of emptiness. A bit of isolation, now that you're working with a new group of people, and your circle of faces is morphing into a new entity altogether. Some might even say it's a sign of depression.
But that's not unique to the IT world.
What I've seen that is unique to the IT world is the extreme level of self-worth tied directly to the "hands-on" achievements. You don't see that in construction. You don't see it at that level in most any other line of work. An IT engineer/technician/programmer/analyst assesses their value by virtue of what technologies they've mastered, what projects they've been instrumental in accomplishing, and how their professional-social (combined) circle values their capabilities. That's right. It's a bit of a vanity and ego twist, but we do very much value what our peers think of our abilities. We absolutely do NOT want to be the guy who gets joked about for screwing things up.
Now that person is asked to step away from that zone, and into an entirely unfamiliar zone. A new zone where self-valuation is based on entirely new skills and new methods of assessment. It's a major shift and it often causes problems for people trying to cope with a multi-faceted group of changes:
- New peers
- New duties
- New skills
- New assessments
- New schedules
- New agendas
Shit. Even one or two of these can be very disruptive to a person. Emotional and physical. But when you've spent years tying yourself strongly to each of these, and ALL six of them are swapped out... wow! For a non-IT person, it would be like...
- Moving to a new house
- ...In a different country
- ...On a different planet
- ...In a different climate
- ...Using a different language
- ...and Changing your name
Some can cut it. Some can't. Some relish the new role. Some despise it. Some find peace and comfort. Some find angst and turmoil. It really boils down to one basic issue...
Are you happier working with "things" or with "people"?
Most IT folks I've known over the years, tend to favor "things". Mainly because it's a technical field of work, that requires hours and hours of intimate time with "things" in order to figure them out in excruciating detail. They're often more at ease in a quiet room surrounded by stuff: hardware, or software. Or behind a computer screen typing away at code. The more intimate our relationship with our technologies, the more isolated we often become. Compare the average day of a network engineer, server administrator, or programmer with someone in construction, fast food service, sales, or other fields, and you'd likely find the IT person spends much less time with much fewer people each day. It's usually referred to as "the nature of our work".
That leads into the dilemma of making the shift from working with technology to managing people. It's entirely different. Some have the desire and the natural tendency to make that jump, but more often it's a very tough transition. I've known quite a few colleagues over the years who've tried to make that switch and only a few stayed with it. Most of them moved back into a technical role and were happier. I suppose the inverse would be true as well: Try to move a non-technical manager into a role where they spend most of their time putting things together in a data center, by themselves or with one other person (the most common scenario I've seen). That, too, would be a difficult transition to get used to.
Conclusion
So, having said all this, what I really need to say is that when you are dealing with a mid-level IT manager, especially one who has only recently made the transition, be considerate. It's tough. Very tough. And you may find them to be a bit awkward and uncomfortable at times. Give them time to adjust and a little room to figure out what they're doing. It may work out just fine. Too often others are quick to judge against them, and that only adds to the angst and frustration, making a difficult situation even worse. If they're a complete dick, that's one thing, but if they're just awkward, even at brief moments, try to be understanding. I say this because: when that transition works, it works great for everyone. Nothing beats a manager that truly, honestly, thoroughly "gets it". They've done your job, or worked at a peer level, long enough to know what it means for those still doing it. Nurture a manager like that, and it comes back around in good ways.
Subscribe to:
Posts (Atom)

