I've applied to do a surveying course which I've noted has as some elective options programming in java, and programming in C++. I'm wondering where/how surveyors use programming and if these electives would be good ones to take (once I'm far enough through to choose electives).
Also, I'm wondering how and when you need to make the choice of going into land, mining or engineering surveying? I have no idea yet.
Yes yes and yes. Programming is a very useful tool for surveyors.
Case in point. Just sent back someone's survey that had the wrong scale factor applied. If you can program then you can always roll your own solution and make sure that mishaps like that are impossible to occur.
As for choosing your path, I think for most people that happens once they get into their first job. Depends on your course though.
Used extensively for software customization. Search for AutoCAD LISP routines for one example.
I've written several small programs (less than 20 lines of code) and a few longer ones (a few hundred lines perhaps). Typically for small mundane routines I simply can't easily get anywhere else. I might need a routine that applies a scale factor and rotation angle to the inverse of two coordinates for a simple application, or a handy map closure routine.
I use excel, User RPL (hp calculator code) and various forms of BASIC. Nothing as sophisticated as what you are about to venture into. However, Java makes a lot of sense because it is used on so many platforms.
most of the times surveyors need to be able to write small programs typically it is for
AutoCAD using AutoLisp
or a small command line data conversion utility, (a C/C++ routine)
But you if you have a big idea like one described here [msg=174172]OK, I have designed a neat new data collector [/msg] than you definitely need a good programming skills. You definitely need GUI here (Qt is a good option for Desktops, Andriod Java for mobile plathforms), it has to be a multiplatform program so a lot of hard work and time, but than you are slowly moving away from surveying...
IMHO, you don't need the C++ in surveying not unless you're doing systems programming or involved in a large scale programming project where application speed and efficiency are absolutely necessary.
In my case, I use the VBA and the C#.NET. As you know, utility development is highly sustainable when done in an object based or Object Oriented environment. If your intention is purely under the AutoCAD environment wherein you don't need dynamic linking to the outside world then you might need the Autolisp/Visual Lisp.
I don't know, it really depends on your preference and exposure as well as your IT culture.
🙂
I wrote all of my own COGO and Field-To-Finish programs, set up for maximum efficiency in my surveying style. They have made a huge difference in my business.
I'd add perl to the mix. It's an amazingly powerful language, especially for the kind of text-parsing problems that are common in dealing with survey data (ASCII coordinate files, raw data files, NGS datasheets, KML files, etc.). I wish I were proficient in perl, but I haven't taken the time to move beyond the ability to build a few little utilities with it.
I think a little programming knowledge is extremely handy.
I have written most of our office and field software, but nobody needs to go that far. I did just because it was fun. You might not feel that way!
As mentioned above, PERL is a handy language, especially for tinkering with text(ASCII) files. It seems that text file manipulation is one of the handiest things you can learn. Seems like you are always getting data files from folks that are not in a format you need, and re-formatting with PERL (or with a really good text editor like Notepad++) is a real time-saver.
I do any serious programming in Visual Basic, which eliminates most of the painful aspects of GUI programming. It is a really terrific programming environment.
I have also found a lot of uses for AUTOIT3, which is invaluable for forcing Windows to do things your way. It is a BASIC-like language and is decidedly NOT painless for GUIs, though.
I learned C many years ago, mostly because I wanted to learn more about how computers work with data. It gave me a real education, but is a very unforgiving language. I learned I was not a 'serious'-enough programmer for C.
Many of the newer BASICs are very powerful, friendly and free, too! BASIC is a personal choice for me (you know - I can program BASIC in any language!!).
Good question and excellent comments provide many benefits. My observations are found on my web site.
surveyor programmer or programmer surveyor - that is an interesting topic.
I would stay with surveyor programmer because of his understanding the applications, it is not possible to teach a programmer years of field experience. This is not to say programming does not need years of experience, but it does not need field (muddy boots)
the question is where to take time for programming since we have to survey to feed ourselves.
I started programming in my last year at the high school, that was 30 years ago.
My math teacher had an AppleII and a Philips P2000 and teached us how to write some basic code ... I've been programming ever since, moved to Pascal, Delphi, some Lisp ...
Once I started surveying and processing the raw data I found myself doing a lot the same steps over and over again ... when you know a little programming at this point you see how you can speed up some tasks and reduce the possible errors when doing a lot of the manual file editing.
In the late 80's we prepared all our stake-out angles and distances at the office ... once at the construction site you could start over again and calculate by hand some points. I started writing a cogo program for the Psion Series, one of the first handheld devices ...
When one knows how to program a little as a surveyor you will surely benefit from it. Be it by writing short routines to speed up work or transforming ascii files for generating input files or reports.
I never regretted that I started programming,
I'll never compete with the professional programmers, but it's great to code from time to time, I love the challenge and the logic behind it.
So I must be one of the surveyor programmers,
Chr.
I started a computer science degree a couple years ago to get the programming classes . I have written many surveying routine in all languages , HP48 , TCL/TK (my favorite) , Visual basic , C++ ( only because our assignments were required in C++) Lisp ( kind of like Autolisp) , Java .
I am about a year away from a BS in Computer Science but have no time to finish it .
, at the moment.
My current favorite is Excel , its a surveyors dream . Not only so you get the cell formulas but you also get to include Visual Basic and GUI,s . And you can combine them in a cell formula. IF I had my way my data collector would be Excel. I have already wrote the cogo , database and can store shots and stake out , station offset , deed plot ect. Store raw data . It could be used right now on low key project if you did not mind enter angles into a popup box .
Why did I do this I dont know , just for the fun of it .its a sickness..
I utilized my map projection utility (local to grid) in every lot parcel surveying task I am in. This is an Excel based application used to transform old local system into grid system. I utilized the VBA API development tool as the intention was only for my own consumption. I developed the system many years ago and still it is working perfectly.
> Why did I do this I dont know , just for the fun of it .its a sickness..
this feeling is so familiar to me - this is my sickness, a story about my own gps, you probably red this year ago or so I posted about that on this board. ..I just could not resist temptation of adding some input to the topic of sickness so mentioned about it again. :-$
WOW, Yuriy. That is really fascinating. Thank you for sharing your adventure!
Wow that is interesting , looks like a fun project . But you are a lot sicker than I, for sure.
I visited the link you provided and read about your project. I wouldn't call it being "sick" because I can readily relate to your desire to do it for yourself. I was quite impressed. Thanks for sharing the story.
what language / platform ?