Detailed Notes
This podcast episode delves into the compelling discussion on why building a portable development environment is essential. Imagine a development environment where code knows no boundaries. Michael and Rob explore the art of crafting a coding haven that seamlessly adapts to any device or location. In an era where remote work has become the norm, they underscore the paramount significance of untethered productivity. Prepare to embark on a journey through practical strategies and ingenious solutions that empower developers to thrive, regardless of the ever-changing environments they encounter. Whether coding from a cozy home office or a secluded beachside retreat, this episode promises to equip you with the tools and insights to create a genuinely mobile development sanctuary.
Read more: https://develpreneur.com/building-a-portable-development-environment-that-is-os-agnostic
Stay Connected: Join the Developreneur Community
We invite you to join our community and share your coding journey with us. Whether you’re a seasoned developer or just starting, there’s always room to learn and grow together. Contact us at [email protected] with your questions, feedback, or suggestions for future episodes. Together, let’s continue exploring the exciting world of software development.
Transcript Text
[Music] oh there we go hey y'all we are just talking about what we're going to do for our podcast today and so decide to hit record um interesting thing was we're thinking about sort of like a operating system neutral or agnostic development environment and I think there's a lot of places we can go with this it's sort of the things we can do it's how you connect to that because I'm you know that's the bonus of working for myself is I Define pretty much everything there are just like a couple of those places where you know I've got customers that like they're you know Windows shop or something so I have to do a few things uh and funny enough uh turbo taxs for business only exists on Windows you cannot get it on Mac you get everything else but not that so I have to I have a Windows machine specifically for Turbo Tax every year so I can do my taxes and occasionally I use it for other things I had a customer that had an iTunes thing I digress um it reminds me back in the day of like when we had sneaker Nets and stuff like that and you like you always had and I think it still makes sense so I think that's maybe we'll talk about is things like setting up your environment and setting up yourself so you can be very Mobile in your coding and we can probably go into a couple of different things I do like that you we can talk about like um portable apps and setting stuff up like that uh some of those devices making sure you can get your mail and then just like the general thoughts around that so I think that's probably a pretty cool was that sort of where you're were thinking of going yeah because I I kept trying to remember that uh portable apps I was like I know there was something out there that you just put on a thumb drive but even there in some environments your thumb drives um you know out right so and was even interesting so you just mentioned turbo attacks so I remember before I got my steam deck that I would actually go out to the windows developer uh site and actually download the virtual box image for Windows and install Oblivion on it so I could play Oblivion every once in a while uh so you could actually install your Turbo Tax that way do your taxes once a year then basically turn off your image and read I've thought of that I've also got you know there there's also like there's um because I actually ended up spinning up for the one customer I spun up uh Su CA I think they've got you can get reasonable um Windows VMS that are full-blown Windows 10 um it was like I think if you don't you know if you've got like one processor processor and like a giga memory or something which runs pretty much what you need um I think it's was like 20 bucks a month something like that so yeah you could just come in spend system up install everything on it and then bring it back down which actually what we did for our development we had multiple windows development environments for I don't know three months basically and then shut them all down afterwards so there are those kinds of things so yeah there's there's enough little options to that that I think why not we'll go ahead and dive in and see how this goes sound good one second to grab a drink and I'll be right back oh allow that for the rest of you go get your own drink grab some caffeine or uh caffeine free if you're trying to go caffeine free I'm going to suck down a little water there to I'm going to do a little bit more so I can make sure that the vocal cords are fresh and now that Michael's back we can start we can do that anyways because the podcast people they have no idea where we are or what we're doing hello and welcome back we are into yet another episode of building better developers developing more podcast this episode look I'm going to right away talk to you about this one this episode we're going to talk about uh what could to call them operating system agnostic environments these are some of the things that actually goes back I think I actually talked about them in the uh in the develop andur book I think we talked a little bit about having we talk about like having personal repositories and some things like that we talked about being able to have like a mobile development environment for yourself and probably today it is more important than it has been in the past but the good news is there are way more tools available to help you to do this than there ever were in the past and so that's where our focus is going to be first before we get too far into it my name is Rob Broadhead I'm one of the founders of develop and or building better developers also founder of RB Consulting on the other side is my but I'm not even gonna tell you a name I'm G to let him introduce himself name included this time around hey everyone my name is Michael MOS I'm also a co-founder developing Nur and founder of Envision QA where we help Healthcare and small businesses build applications and test software now let's just dive right into it this is this is one of those things that I probably is not as much of an issue now when you're remote but when you're in an office there are things that you run into now some of them you don't technically you don't want to we'll call it work around them because it's get you fired it's like or it's illegal or something like that particularly if you're like DOD or something like that where yeah you need to be like you know cross all your teas and Dot all your eyes however there are there's a lot of value in being able to have a mobile development environment for yourself where you can at any given time pretty much just sit down grab a machine or something and and dive in now one of the worst cases that I've I've known of somebody that's run into this and really in was found that their backup system we'll call it was invaluable is they were traveling and their laptop died it got like crushed in the flight I can't remember exactly what it was but it was dead they needed to work the good news was is they had thing called portable apps it was a Windows development environment they had they had a you know hard drive backup so they were able to basically take that hard drive plug it into a kiosk somewhere to you know like a a business center piece PC and they were able to run all their stuff they didn't have to do a bunch of installations or anything they had everything already set up so it took them almost no time to convert over so that if you're now it's a portable apps originally was Windows only there is a Mac version out there I don't think it's being uh maintained because you really don't need that for a Mac I mean it's these days it's like usually if you jump on any Mac it's going to have essentially the same stuff um just the need for it has sort of sort of disappeared however uh and windows is sort of the same if you think of the cloud but if you need something installed on your machine then you may want to go that route you also may want to have just have like an it's it's cheap now to have a really big honken external USB drive that's pretty good speed and you can put uh if you want you can and for a while I had installs for my entire I had it for my ID I had it I was doing Java Tomcat so I had the version of java that I was on I had the I had an executable is on Windows yes and sorry just crossed myself because I used to have to do that um I had the Java environment I had uh at the time I was using a thing called my Eclipse which was just like Eclipse with some extra stuff but I had that executable I had the um the Tomcat stuff because I was pushing every I was using tomcat and I had my sequel so I had my it would be my you know maybe my uh jamp stack instead of you know uh Linux and everything actually would have been a wamp I guess but it was without PHP it was with a J and so forget the letters it was Java database web and an IDE and a partridge in a parat tree but I also had like ant uh I use ant at the time I used it I still do I actually use it heavily for uh like you know moving stuff around build scripting and things like that so that all made for a a pretty easy way for me if I needed to to jump on a machine fire everything up and just go particularly if I'm on a um like I'm traveling or something like that and something happens to my laptop luckily it didn't uh but also I always made sure I had which was a bonus is I had my local development environment on my machine but then I always copied on a regular basis back to my hard drive now Flash Forward a few years and then created this thing called drop box or you might also use box or you may use the uh the windows uses whatam migger I forget what they call it but Windows has got their own file stuff Google Drive you've got all of these different things so you've got all of these opportunities to put and I'd highly recommend that you do that is have your development environment on your local machine set up so that whatever your cloud provider thing is that it's syncing it up there so if it's Google it should sync up to your Google Drive if it's Dropbox sync up to Dropbox if it's you name it sync it up to there use that because if something happens and you can bam you can pull that stuff right back down and I have had it happen not even trying I've had it it's just like sitting there working one day and the hard drive on my development machine dies boom I you know I swap it out and I'm ready to go again or I could just move to another machine and then everything's synced up now of course there's a this other thing I haven't even mentioned right now is Version Control make sure that you if you're committing your code on a regular basis like and I mean regular like multiple times a day not like once a year then you'll have all of that you can just pull the latest version and you're off and running so that should help you as well so there's a lot of different ways you can do it I'm talking about uh low Tech Solutions so far but I'm going to flip it over to Michael and let him talk about some of the other like the higher Tech things we'll call it that things like virtual machines and containers and stuff like that because that also and we'll use the dword everybody or it's and its variance of Docker and those other things that are now becoming very uh common place I find in the development world and we'll let you sort of take over there and and talk about your experience with those and how you can see those being a good solution yeah thanks Rob so even before Docker and like kubernetes and all these containerization that have been out there probably about a decade or so ago we uh it was really big was VMware and virtual machines and being able to run citric within an environment so basically you create a operating system within environment you configure it and then you essentially clone it for different users and that essentially started this whole idea like the um portable apps things like that people are like well why can't we do that with our applications why can't we do that with our desktops so today we now have you know Google Drive we have doctor we have virtual um storage locations so now with containers we can now even virtualize our environments more so what you can do now is you can actually create a folder structure store all of your application uh files your development environments everything in that nature store in one place and then you could essentially create a container and spin up the container with your environment already set up so you could actually back up your virtual environment so like if you're running Linux uh you could create a Linux container with all of your virtual um your Eclipse your IDE whatever you need your jvms whatever you need to do your work you basically build this container you set it all up and then you back up your container you store that in a virtual environment on Dropbox Google Drive whatever but you have that uh file structure that you essentially attach as a virtual drive to these containers and now you have the ability to just plug- inpl containers and just attach your file system so now if you do what Rob was suggesting and you create version controls of your file system you can now keep track of all of your files you have virtual backups you can use git you can use um you know subversion and you could set up and essentially do a time machine what Mac has for backups of your development environment or basically your desktop I saw you come off mute there Rob did you have I was just gonna say I I just had it like no you cannot use subversion you can use G but you can use RCS you can use anything but subversion sorry I just had to throw that in It Go right well I was trying to avoid CV or what is it CSV CVS I always get that flipped I I don't know why they named it so close but um I think that was probably before csvs but yeah CVS RCS uh which to me was actually less painful than subversion although I know love people love subversion and all that I was rather like back to like uh was it Sor safe I think was the original Microsoft one before it became eventually became the team's um Version Control t uh I forget what it's called now because they've changed it a couple names but I digress I'm sorry I was just like I I almost had to say something and I was like all right I'll come off mute just in case I need to like at some point if you say something like that again carry on no but as prob was saying that you know really though today git is primarily what you should be using for Virgin Couture something newer than that pretty much get is it it right now for most developers but where I was going with this is not only Linux but you can set up your own Windows machines for those of you listening to the podcast if you jump on and watch the pre video for this we actually talked about uh some additional ways you could actually spin up like Windows machines virtually and install software and test things on that not only for development and setting up your environments but this is also a great way to test different versions of software you you can also test your environments in different OS levels so you could spin up different containers for say Windows 10 Windows 11 Windows 8 uh it just depends what you need but the whole idea of this concept that we're talking about is setting yourself up to where you're essentially operating system neutral or essentially environment neutral and where this came from is I I have dealt with so many companies over the years in so many different jobs where there's so many security policies in place that are there to protect the company sure but they can also impact us as developers and our ability to work for example you could have a policy that comes down that now blocks all your Maven dependencies you now can't pull down your U Maven versions to actually install and run your software ways to get around that well you can go out and actually download all the jars put them in a central repository and then pull them in that way uh there's ways around this but if you think essentially neutral set yourself up to where these policies these things won't impact you and that way if you do it right no matter where you go what system you're working on you can pretty much sit down on any machine plug in your connect to your virtual uh Drive plug in your thumb drive whatever and it's you're up and running no matter where you're at and that's it's it's one of these especially if you're any sort of a we'll call it that you know the road warrior that they used to talk about it is actually very valuable to have that and it's it is easy or it is easier now to carry around a u you know like a little tablet or you've got like the Microsoft Surface or some of those kinds of things that are pretty small you know you can have some pretty a fairly small fairly lightweight laptop or the Android uh book Chromebooks the thing you want to look at with those though because you could have a really it's awesome if you're traveling a lot you get a dirt cheap Chromebook for I don't know 100 150 bucks I think they they're pretty cheap for that so it's it's going to be less than a desktop the key there is just to have enough of your stuff offloaded from the computer so that you're not having to like build this entire you don't have have to have this big honken thing you have this really cheap little thing throw a couple of files on there make sure you can do you know editing and building and then a lot of it particularly if you've got somewhere out on a cloud where you've got a container or something like that then you can always go hit that tell that into it SSH into it whatever you need to do and you can work there you can also use uh a lot of the tools that are out there we've talked about before somewhere along the way a while back now talked about Cloud9 and some of those kinds of things where they are Cloud first tools feel free to I would say regularly use your favorite search engine to look for uh cloud-based idees or cloud-based development tools things along those lines do those searches because there's a lot of stuff that pops out and there's a lot of projects out there there's one uh I came across it was a uh Visual Studio code that was built for like a lightweight kind of thing so you could put it on just about any and it is those kinds of things are crossplatform enough that you can run them pretty much anywhere uh I think you run some of this stuff outside on your phone um worst case learn VI or emac or something like that and you can literally I've I've got uh a little app that allows me to remote in I don't know if it's the same one Michael uses it is what is it called Tellus I think is what it's called I'm G to look at I'm looking at my phone right now terus t r m i u s allows you to do uh you can do regular tet you can do SSH into a machine it gives you a nice little you know your standard you know console can do and it it's got your basic Escape keys and stuff like that as well so you can work around in a remote environment if you need to uh if you need something more goey related uh tablets work really well you do have to watch out because if you get on to some of the a lot of them now especially the Apple based ones there's a a double click has a different it gets overridden so if you're clicking on a form or need to double click a form or something like that it does mess with your uh your navigation but that being said swinging back around to the original point before I pass it on to this guy that just did a little finger in the air um it's you want to watch out if it's a if it's a security related thing then you need to you know make sure that you you conform as but there are going to be things like Michael brought up perfect examples of where you can't work because the security gets in the way so make sure that you're thinking you can you look for ways to do it that would be secure like copying files local or talk to your your network administrator security people to say hey we need access to this uh you in the back you raised your hand so one other thing we were mentioned so we've talked about um open apps or uh that app tool that we uh that you can install apps on thumb drives the other thing to think about too when you're dealing with applications for virtual uh work and things of that nature look at the binary versions of those applications and by binary I mean like for instance if you have like eclipse eclipse can run on a Java runtime uh open uh what it um shoot uh not Libre open Office will also run on the Java run time you have windzip which will run on just about everything or seven uh 7 plus which I think comes with both installers if you download it so these are things you can download put on a thumb drive and literally plug in and as long as you have like Java or you have the compiler or the runtime you can run these applications literally on any machine in any environment if you have access to you know the thumb drive otherwise you would need to download them from a virtual uh storage like Docker or Google drive what you can do I mean it's it's like I said it's it's become more common to have cloud cloud access of varying sorts sorry I'm just choking it's causing me so emotional right now there's Cloud access to so many of these things that you can you know for example if you throw it out in Dropbox then you might be able to just pull it down if you have a uh secure server may have even a a personal server that you can lock down to the point where it's like the only place you can way you can get to it is through a VPN or through you know from specific IPS there's there's a lot you can do to make your stuff available we'll call it your stuff but also make it only available to yourself or in a way that only you know that you can turn on and off access to it so that it does prevent you know it like covers the security types of issues while also making the stuff available to you which is really the key here is you want to be able to be productive and not spend days going through and configuring stuff and environments and stuff which is sort of my last thought on this one is also where once you set up your IDE and your environment whatever you can take a snapshot or something a lot of places it's like they'll allow you to export your configuration uh all your settings and stuff like that particularly if you're in there and you've got all these little special fonts you do and color schemes and all these things that you can do make sure that you export those and this includes making sure that you get in a habit of consistent directories and folders and file names and locations so that when you jump on another machine that they're ideally they're all relative to some starting point that you can easily set if not do them as uh standard as possible so that you can get access to it so that you can easily just jump in and go instead of having to remap all of your settings the next time you jump on a machine uh parting thoughts for me Mike yeah I would like to kind of add to that so we've talked about you know portable apps things of that nature and taking snapshots of your development environment the other thing is maybe download all of the utilities and applications that you use and store them in a offline location either Gmail thumb drives you know Google Drive Dropbox whatever because if you put them in a place that you secure in most situations you can get access to that wherever you're at whereas you might be blocked from some of those sites to actually get the tools you need to do your job you may also and you know we'll wrap this one up on that but you may also lose access to those there have been I used to periodically I would just back in the day I would actually burn stuff to CD like every six months that was my utility stuff because it was easier to get it off of that than it was off of a thumb and actually was more accessible to have a CD EV than a DVD than there was uh a thumb drive nowadays you can probably put it out and you have network access but you may want to have it on a thumb drive make sure it's your thumb drive however you have it set up that you have the dongles or whatever you need in case you have a USB thumb drive and you end up on a machine that only has usb3 ports or USBC I guess it is now there's things like that you want to run that you want to make sure you don't run into um you compatibility issues but those things are great for you because you you may find that your favorite utility no longer you know is no longer supported or whatever happens you also need to make sure you have the licensing stuff if you you know for whatever you've purchased so that you've got the right keys and all that kind of stuff that you need to that being said you don't need any special keys licenses or anything else to listen to us or to give us feedback so as always feel free to shoot us an email at info developer.com check us out on our at develop andur Twitter well now x uh stuff Facebook we've got a page LinkedIn we've got a page fa go to developer.com DV p ne.com and leave us notes there post we've got uh contact us forms and also tons and tons of content for you to peruse you can also check us out on YouTube lots of stuff there as well including you can see this instead of just listen to it so and you get bonus material that always occurs so we'll wrap this one up we're not done yet we're going to continue we're actually getting close we're trying to figure out how we want this to look as far as wrapping up this season and what the next season will be uh but we're getting into that we're getting about to that point where we'll probably call it you know shut the books on season 21 it'll be on Season 22 amazingly enough once again Way Beyond we've got more seasons than some people have podcast episodes that being said I hope that you have a great season and lots of cool podcast episodes in your future go out there and have yourself a great day a great week and we will talk to you next time bonus material anything else gu this this is one of those that uh okay bonus material because you people are working uh because you can see this is if I'm on the right screen this is portable apps and I'm going to blow this up a little bit because you probably can't see it well these are the apps that are on and it's portableapps.com why is it I'm play music gosh I hate that uh over 500 apps um and it start they have them categorized because you can get very quickly lost accessibility stuff which is actually very useful uh lots and lots of developer development stuff including an xamp there we go get that recording off of there um education related stuff which is you depending on what you're doing can be very useful games everybody what games uh and they've got tons and tons of those we've got a lot of really useful Graphics stuff a lot of really useful their internet related stuff like um they've got a lot of little lightweight browsers they've got email and things of that nature some of it may be perfect for you anyways to just go to one of these lightweight email clients and use that for your email as opposed to some bulky thing that you're normally using the they've got a lot of video and music uh manipulation and editing stuff all your favorite offy type stuff and all of this is uh freew you got like lib office and uh what was the other one uh open Office which is now apache's open Office PDF viewers security stuff Zips and utilities and all that kind stff it's like it just goes on and on and on and on and on so that is portable apps it's a really good it's like I said there is Mac one it is uh last time I tried it it was based on like OS 12 or something it was it was a while back um and it was it's really got the point that honestly I looked at it and there were none of the app those apps I needed because any machine I've got I've I've got what I need on it basically because I just like drop it on there and I'm ready to go I could take any like you can take you know if you want to take uh you want to use Eclipse you you throw it on your machine but then you could just pull the youve just got the package thing and you can just install it wherever you need to if it's a obviously if it's another Mac thing um a lot of times it's just as easy to use use some sort of browser based you know cloud-based kind of thing to do your IDE or you know you can use a lot there's a lot of lightweight ones as well actual Vis Visual Studio code when it's minus its plugins is pretty small right now you can like everything you can fatten it up with plug ends as well uh any thoughts on this one go ahead yeah so on the flip side of that if you are not in a cloud environment or you're going to be in an environment where uh you have a like a Chrome book or some type of machine that is not your typical machine and you can't install stuff to it the other thing you could do that we didn't really touch on is other than containers for a long time now you've had Linux and even Windows to an extent you can actually boot from a thumb drive uh and you can basically take your whole system with you on a USB stick or an external drive or even as Rob mentioned you you take a snapshot with a CD or DVD and you pop that in and you can run your entire OS virtually from the environment now you still have to store your uh data potentially to a thumb driver or an external device but that is another option you could do uh to kind of be virtual uh and not lock down to a particular environment yeah that's a good point I've forgotten about that I I used to use that back in the day where I had a full bootable and it was it was an emergency kind of thing but it was like if I needed to I could plug that I it was you plug the hard drive in and I could actually run off of that for a while so I didn't have to actually repair my machine I could just be like screw it as long as I can get in I'll launch it and we're ready to go uh hopefully you're ready to go because we are we're going to wrap this one up and we're going to dive right back right into our next stuff as far as we're concerned first as far as you're concerned it'll probably take you a little while so we're going to you get to pause and come back and we will talk about our next episode glad have a great time leave us check out the show notes for links and things like that and let us know if you have any questions comments suggestions jokes any of that kind of stuff we take it all and uh we take it under advisement we may not use it especially if it's a dirty joke but hey the rest of the stuff we will probably find useful thanks a lot thank you for your time and we will see you again soon [Music]
Transcript Segments
[Music]
oh there we go hey y'all we are just
talking about what we're going to do for
our podcast today and so decide to hit
record
um interesting thing was we're thinking
about sort of like a operating system
neutral or agnostic development
environment and I think there's a lot of
places we can go with this it's sort of
the things we can do it's how you
connect to that because I'm you know
that's the bonus of working for myself
is I Define pretty much everything there
are just like a couple of those places
where you know I've got customers that
like they're you know Windows shop or
something so I have to do a few things
uh and funny enough uh turbo taxs for
business only exists on Windows you
cannot get it on Mac you get everything
else but not that so I have to I have a
Windows machine specifically for Turbo
Tax every year so I can do my taxes and
occasionally I use it for other things I
had a customer that had an iTunes thing
I digress
um it reminds me back in the day of like
when we had sneaker Nets and stuff like
that and you like you always had and I
think it still makes sense so I think
that's maybe we'll talk about is things
like setting up your environment and
setting up yourself so you can be very
Mobile in your coding and we can
probably go into a couple of different
things I do like that you we can talk
about like um portable apps and setting
stuff up like that uh some of those
devices making sure you can get your
mail and then just like the general
thoughts around that so I think that's
probably a pretty cool was that sort of
where you're were thinking of going yeah
because I I kept trying to remember that
uh portable apps I was like I know there
was something out there that you just
put on a thumb drive but even there in
some environments your thumb drives um
you
know out right so and was even
interesting so you just mentioned turbo
attacks so I remember before I got my
steam deck that I would actually go out
to the windows
developer uh site and actually download
the virtual box image for Windows and
install Oblivion on it so I could play
Oblivion every once in a while uh so you
could actually install your Turbo Tax
that way do your taxes once a year then
basically turn off your image and read
I've thought of that I've also got you
know there there's also like there's um
because I actually ended up spinning up
for the one customer I spun up uh Su
CA I think they've got you can get
reasonable um Windows VMS that are
full-blown Windows 10 um it was like I
think if you don't you know if you've
got like one processor processor and
like a giga memory or something which
runs pretty much what you need um I
think it's was like 20 bucks a month
something like that so yeah you could
just come in spend system up install
everything on it and then bring it back
down which actually what we did for our
development we had multiple windows
development environments for I don't
know three months basically and then
shut them all down afterwards so there
are those kinds of things so yeah
there's there's enough little options to
that that I think why not we'll go ahead
and dive in and see how this goes sound
good one second to grab a drink and I'll
be right back oh allow that for the rest
of you go get your own drink grab some
caffeine or uh caffeine free if you're
trying to go caffeine
free I'm going to suck down a little
water there to I'm going to do a little
bit more so I can make sure that the
vocal cords are
fresh and now that Michael's back we can
start we can do that anyways because the
podcast people they have no idea where
we are or what we're doing hello and
welcome back we are into yet another
episode of building better developers
developing more podcast this episode
look I'm going to right away talk to you
about this one this episode we're going
to talk about uh what could to call them
operating system agnostic environments
these are some of the things that
actually goes back I think I actually
talked about them in the uh in the
develop andur book I think we talked a
little bit about having we talk about
like having personal repositories and
some things like that we talked about
being able to have like a mobile
development environment for yourself and
probably today it is more important than
it has been in the past but the good
news is there are way more tools
available to help you to do this than
there ever were in the past and so
that's where our focus is going to be
first before we get too far into it my
name is Rob Broadhead I'm one of the
founders of develop and or building
better developers also founder of RB
Consulting on the other side is my but
I'm not even gonna tell you a name I'm G
to let him introduce himself name
included this time around
hey everyone my name is Michael MOS I'm
also a co-founder developing Nur and
founder of Envision QA where we help
Healthcare and small businesses build
applications and test
software now let's just dive right into
it this is this is one of those things
that I probably is not as much of an
issue now when you're remote but when
you're in an office there are things
that you run into now some of them you
don't technically you don't want to
we'll call it work around them because
it's get you fired it's like or it's
illegal or something like that
particularly if you're like DOD or
something like that where yeah you need
to be like you know cross all your teas
and Dot all your eyes
however there are there's a lot of value
in being able to have a mobile
development environment for yourself
where you can at any given time pretty
much just sit down grab a machine or
something and and dive
in now one of the worst cases that I've
I've known of somebody that's run into
this and really in was found that their
backup system we'll call it was
invaluable is they were traveling and
their laptop died it got like crushed in
the flight I can't remember exactly what
it was but it was dead they needed to
work the good news was is they had thing
called portable apps it was a Windows
development environment they had they
had a you know hard drive backup so they
were able to basically take that hard
drive plug it into a kiosk somewhere to
you know like a a business center piece
PC and they were able to run all their
stuff they didn't have to do a bunch of
installations or anything they had
everything already set up so it took
them almost no time to convert over so
that if you're now it's a portable apps
originally was Windows only there is a
Mac version out there I don't think it's
being uh maintained because you really
don't need that for a Mac I mean it's
these days it's like usually if you jump
on any Mac it's going to have
essentially the same stuff um just the
need for it has sort of sort of
disappeared however uh and windows is
sort of the same if you think of the
cloud but if you need something
installed on your machine then you may
want to go that route you also may want
to have just have like an it's it's
cheap now to have a really big honken
external USB drive that's pretty good
speed and you can put uh if you want you
can and for a while I had installs for
my entire I had it for my ID I had it I
was doing Java Tomcat so I had the
version of java that I was on I had the
I had an executable is on Windows yes
and sorry just crossed myself because I
used to have to do that um I had the
Java environment I had uh at the time I
was using a thing called my Eclipse
which was just like Eclipse with some
extra stuff but I had that executable I
had the um the Tomcat stuff because I
was pushing every I was using tomcat and
I had my sequel so I had my it would be
my you know maybe my uh jamp stack
instead of you know uh Linux and
everything actually would have been a
wamp I guess but it was without PHP it
was with a J and so forget the letters
it was Java database web and an
IDE and a partridge in a parat tree but
I also had like ant uh I use ant at the
time I used it I still do I actually use
it heavily for uh like you know moving
stuff around build scripting and things
like that so that all made for a a
pretty easy way for me if I needed to to
jump on a machine fire everything up and
just go particularly if I'm on a um like
I'm traveling or something like that and
something happens to my laptop luckily
it didn't uh but also I always made sure
I had which was a bonus is I had my
local development environment on my
machine but then I always copied on a
regular basis back to my hard drive now
Flash Forward a few years and then
created this thing called drop box or
you might also use box or you may use
the uh the windows uses whatam migger I
forget what they call it but Windows has
got their own file stuff Google Drive
you've got all of these different things
so you've got all of these
opportunities to put and I'd highly
recommend that you do that is have your
development environment on your local
machine set up so that whatever your
cloud provider thing is that it's
syncing it up there so if it's Google it
should sync up to your Google Drive if
it's Dropbox sync up to Dropbox if it's
you name it sync it up to there use that
because if something happens and you can
bam you can pull that stuff right back
down and I have had it happen not even
trying I've had it it's just like
sitting there working one day and the
hard drive on my development machine
dies boom I you know I swap it out and
I'm ready to go again or I could just
move to another machine and then
everything's synced up now of course
there's a this other thing I haven't
even mentioned right now is Version
Control make sure that you if you're
committing your code on a regular basis
like and I mean regular like multiple
times a day not like once a year then
you'll have all of that you can just
pull the latest version and you're off
and running so that should help you as
well so there's a lot of different ways
you can do it I'm talking about uh low
Tech Solutions so far but I'm going to
flip it over to Michael and let him talk
about some of the other like the higher
Tech things we'll call it that things
like virtual machines and containers and
stuff like that because that also and
we'll use the dword everybody or it's
and its variance of Docker and those
other things that are now becoming very
uh common place I find in the
development world and we'll let you sort
of take over there and and talk about
your experience with those and how you
can see those being a good
solution yeah thanks Rob so
even before Docker and like kubernetes
and all these containerization that have
been out
there probably about a decade or so ago
we uh it was really big was VMware and
virtual machines and being able to run
citric within an environment so
basically you create a operating system
within environment you configure it and
then you essentially clone it for
different users and that essentially
started this whole idea like the um
portable apps things like that people
are like well why can't we do that with
our applications why can't we do that
with our
desktops so today we now have you know
Google Drive we have doctor we have
virtual um storage locations so now with
containers we can now even virtualize
our environments more so what you can do
now is you can actually create a folder
structure store all of your application
uh files your development environments
everything in that nature store in one
place and then you could essentially
create a container and spin up the
container with your environment already
set up so you could actually back up
your virtual environment so like if
you're running Linux uh you could create
a Linux container with all of your
virtual um your Eclipse your IDE
whatever you need your
jvms whatever you need to do your work
you basically build this container you
set it all up and then you back up your
container
you store that in a virtual environment
on Dropbox Google Drive whatever but you
have that uh file structure that you
essentially attach as a virtual drive to
these containers and now you have the
ability to just plug- inpl containers
and just attach your file system so now
if you do what Rob was suggesting and
you create version controls of your file
system you can now keep track of all of
your files you have virtual backups you
can use git you can use um you know
subversion and you could set up and
essentially do a time machine what Mac
has for backups of your development
environment or basically your
desktop I saw you come off mute there
Rob did you have I was just gonna say I
I just had it like no you cannot use
subversion you can use G but you can use
RCS you can use anything but subversion
sorry I just had to throw that in It Go
right well I was trying to avoid CV or
what is it CSV CVS I always get that
flipped I I don't know why they named it
so close but um I think that was
probably before csvs but yeah CVS RCS uh
which to me was actually less painful
than subversion although I know love
people love subversion and all that I
was rather like back to like uh was it
Sor safe I think was the original
Microsoft one before it became
eventually became the
team's um Version Control t uh I forget
what it's called now because they've
changed it a couple names but I digress
I'm sorry I was just like I I almost had
to say something and I was like all
right I'll come off mute just in case I
need to like at some point if you say
something like that again carry on no
but as prob was saying that you know
really though today git is primarily
what you should be using for Virgin
Couture something newer than that pretty
much get is it it right now for most
developers but where I was going with
this is not only Linux but you can set
up your own Windows machines for those
of you listening to the podcast if you
jump on and watch the pre video for this
we actually talked about uh some
additional ways you could actually spin
up like Windows machines virtually and
install software and test things on that
not only for development and setting up
your environments but this is also a
great way to test different versions of
software you you can also test your
environments in different OS levels so
you could spin up different containers
for say Windows 10 Windows 11 Windows 8
uh it just depends what you need but the
whole idea of this concept that we're
talking about is setting yourself up to
where you're essentially operating
system neutral or essentially
environment neutral and where this came
from is I I have dealt with so many
companies over the years in so many
different jobs where there's so many
security policies in place that are
there to protect the company sure but
they can also impact us as developers
and our ability to work for example you
could have a policy that comes down that
now blocks all your Maven dependencies
you now can't pull down your U Maven
versions to actually install and run
your
software ways to get around that well
you can go out and actually download all
the jars put them in a central
repository and then pull them in that
way uh there's ways around this but if
you
think essentially neutral set yourself
up to where these policies these things
won't impact you and that way if you do
it right no matter where you go what
system you're working on you can pretty
much sit down on any machine plug in
your connect to your virtual uh Drive
plug in your thumb drive whatever and
it's you're up and running no matter
where you're
at and that's it's it's one of these
especially if you're any sort of a we'll
call it that you know the road warrior
that they used to talk about it is
actually very valuable to have that and
it's it is easy or it is easier now to
carry around a u you know like a little
tablet or you've got like the Microsoft
Surface or some of those kinds of things
that are pretty small you know you can
have some pretty a fairly small fairly
lightweight laptop or the Android uh
book Chromebooks the thing you want to
look at with those though because you
could have a really it's awesome if
you're traveling a lot you get a dirt
cheap Chromebook for I don't know 100
150 bucks I think they they're pretty
cheap for that so it's it's going to be
less than a desktop the key there is
just to have enough of your stuff
offloaded from the computer so that
you're not having to like build this
entire you don't have have to have this
big honken thing you have this really
cheap little thing throw a couple of
files on there make sure you can do you
know editing and building and then a lot
of it particularly if you've got
somewhere out on a cloud where you've
got a container or something like that
then you can always go hit that tell
that into it SSH into it whatever you
need to do and you can work there you
can also use uh a lot of the tools that
are out there we've talked about before
somewhere along the way a while back now
talked about Cloud9 and some of those
kinds of things where they are Cloud
first tools feel free to I would say
regularly use your favorite search
engine to look for uh cloud-based idees
or cloud-based development tools things
along those lines do those searches
because there's a lot of stuff that pops
out and there's a lot of projects out
there there's one uh I came across it
was a uh Visual Studio code that was
built for like a lightweight kind of
thing so you could put it on just about
any and it is those kinds of things are
crossplatform enough that you can run
them pretty much anywhere uh I think you
run some of this stuff outside on your
phone um worst case learn VI or emac or
something like that and you can
literally I've I've got uh a little app
that allows me to remote in I don't know
if it's the same one Michael uses it is
what is it called Tellus I think is what
it's called I'm G to look at I'm looking
at my phone right now terus t r m i u s
allows you to do uh you can do regular
tet you can do SSH into a machine it
gives you a nice little you know your
standard you know console can do and it
it's got your basic Escape keys and
stuff like that as well so you can work
around in a remote environment if you
need to uh if you need something more
goey
related uh tablets work really well you
do have to watch out because if you get
on to some of the a lot of them now
especially the Apple based ones there's
a a double click has a different it gets
overridden so if you're clicking on a
form or need to double click a form or
something like that it does mess with
your uh your navigation but that being
said swinging back around to the
original point before I pass it on to
this guy that just did a little finger
in the air um it's you want to watch out
if it's a if it's a security related
thing then you need to you know make
sure that you you
conform as but there are going to be
things like Michael brought up perfect
examples of where you can't work because
the security gets in the way so make
sure that you're thinking you can you
look for ways to do it that would be
secure like copying files local or talk
to your your network administrator
security people to say hey we need
access to this uh you in the back you
raised your
hand so one other thing we were
mentioned so we've talked about um open
apps or uh that app tool that we uh that
you can install apps on thumb drives the
other thing to think about too when
you're dealing with applications for
virtual uh work and things of that
nature look at the binary versions of
those applications and by binary I mean
like for instance if you have like
eclipse eclipse can run on a Java
runtime uh open uh what it um shoot uh
not Libre open Office will also run on
the Java run time you have windzip which
will run on just about everything or
seven uh 7 plus which I think comes with
both installers if you download it so
these are things you can download put on
a thumb drive and literally plug in and
as long as you have like Java or you
have the compiler or the runtime you can
run these applications literally on any
machine in any environment if you have
access to you know the thumb drive
otherwise you would need to download
them from a virtual uh storage like
Docker or Google
drive what you can do I mean it's it's
like I said it's it's become more common
to have cloud cloud access of varying
sorts sorry I'm just choking it's
causing me so emotional right now
there's Cloud access to so many of these
things that you can you know for example
if you throw it out in Dropbox then you
might be able to just pull it down if
you have a uh secure
server may have even a a personal server
that you can lock down to the point
where it's like the only place you can
way you can get to it is through a VPN
or through you know from specific IPS
there's there's a lot you can do
to make your stuff available we'll call
it your stuff but also make it only
available to yourself or in a way that
only you know that you can turn on and
off access to it so that it does prevent
you know it like covers the security
types of issues while also making the
stuff available to you which is really
the key here is you want to be able to
be productive and not spend days going
through and configuring stuff and
environments and stuff which is sort of
my last thought on this one is also
where once you set up your IDE and your
environment whatever you can take a
snapshot or something a lot of places
it's like they'll allow you to export
your configuration uh all your settings
and stuff like that particularly if
you're in there and you've got all these
little special fonts you do and color
schemes and all these things that you
can do make sure that you export those
and this includes making sure that you
get in a habit of consistent directories
and folders and file names and locations
so that when you jump on another machine
that they're ideally they're all
relative to some starting point that you
can easily set if not do them as uh
standard as possible so that you can get
access to it so that you can easily just
jump in and go instead of having to
remap all of your settings the next time
you jump on a machine uh parting
thoughts for me
Mike yeah I would like to kind of add to
that so we've talked about you know
portable apps things of that nature and
taking snapshots of your development
environment the other thing is maybe
download all of the utilities and
applications that you use and store them
in a offline location either Gmail thumb
drives you know Google Drive Dropbox
whatever because if you put them in a
place that you secure in most situations
you can get access to that wherever
you're at whereas you might be blocked
from some of those sites to actually get
the tools you need to do your job you
may also and you know we'll wrap this
one up on that but you may also lose
access to those there have been I used
to periodically I would just back in the
day I would actually burn stuff to CD
like every six months that was my
utility stuff because it was easier to
get it off of that than it was off of a
thumb and actually was more accessible
to have a CD EV than a DVD than there
was uh a thumb drive nowadays you can
probably put it out and you have network
access but you may want to have it on a
thumb drive make sure it's your thumb
drive however you have it set up that
you have the dongles or whatever you
need in case you have a USB thumb drive
and you end up on a machine that only
has
usb3 ports or USBC I guess it is now
there's things like that you want to run
that you want to make sure you don't run
into um you compatibility issues but
those things are great for you because
you you may find that your favorite
utility no longer you know is no longer
supported or whatever happens you also
need to make sure you have the licensing
stuff if you you know for whatever
you've purchased so that you've got the
right keys and all that kind of stuff
that you need to that being said you
don't need any special keys licenses or
anything else to listen to us or to give
us feedback so
as always feel free to shoot us an email
at info developer.com check us out on
our at develop andur Twitter well now x
uh stuff Facebook we've got a page
LinkedIn we've got a page fa go to
developer.com
DV p
ne.com and leave us notes there post
we've got uh contact us forms and also
tons and tons of content for you to
peruse you can also check us out on
YouTube lots of stuff there as well
including you can see this instead of
just listen to it so and you get bonus
material that always occurs so we'll
wrap this one up we're not done yet
we're going to continue we're actually
getting close we're trying to figure out
how we want this to look as far as
wrapping up this season and what the
next season will be uh but we're getting
into that we're getting about to that
point where we'll probably call it you
know shut the books on season 21 it'll
be on Season
22 amazingly enough once again Way
Beyond we've got more seasons than some
people have podcast
episodes that being said I hope that you
have a great season and lots of cool
podcast episodes in your future go out
there and have yourself a great day a
great week and we will talk to you next
time bonus material anything else gu
this this is one of those that uh okay
bonus material because you people are
working uh because you can see this is
if I'm on the right screen this is
portable apps and I'm going to blow this
up a little bit because you probably
can't see it well these are the apps
that are on and it's portableapps.com
why is it I'm play music gosh I hate
that uh over 500
apps um and it start they have them
categorized because you can get very
quickly lost accessibility stuff which
is actually very useful uh lots and lots
of developer development stuff including
an xamp there we go get that recording
off of there um education related stuff
which is you depending on what you're
doing can be very useful games everybody
what games uh and they've got tons and
tons of those we've got a lot of really
useful Graphics stuff a lot of really
useful their internet related stuff like
um they've got a lot of little
lightweight browsers they've got email
and things of that nature some of it may
be perfect for you anyways to just go to
one of these lightweight email clients
and use that for your email as opposed
to some bulky thing that you're normally
using the they've got a lot of video and
music uh manipulation and editing stuff
all your favorite offy type stuff and
all of this is uh freew you got like lib
office and uh what was the other one uh
open Office which is now apache's open
Office PDF viewers security stuff Zips
and utilities and all that kind stff
it's like it just goes on and on and on
and on and on so
that is portable apps it's a really good
it's like I said there is Mac one it is
uh last time I tried it it was based
on like OS 12 or something it was it was
a while back um and it was it's really
got the point that honestly I looked at
it and there were none of the app those
apps I needed because any machine I've
got I've I've got what I need on it
basically because I just like drop it on
there and I'm ready to go I could take
any like you can take you know if you
want to take
uh you want to use Eclipse you you throw
it on your machine but then you could
just pull the youve just got the package
thing and you can just install it
wherever you need to if it's a obviously
if it's another Mac thing um a lot of
times it's just as easy to use use some
sort of browser based you know
cloud-based kind of thing to do your IDE
or you know you can use a lot there's a
lot of lightweight ones as well actual
Vis Visual Studio code when it's minus
its plugins is pretty small right now
you can like everything you can fatten
it up with plug ends as
well uh any thoughts on this one go
ahead yeah so on the flip side of that
if you are not in a cloud environment or
you're going to be in an environment
where uh you have a like a Chrome book
or some type of machine that is not your
typical machine and you can't install
stuff to it the other thing you could do
that we didn't really touch on is other
than containers for a long time now
you've had Linux and even Windows to an
extent you can actually boot from a
thumb drive uh and you can basically
take your whole system with you on a USB
stick or an external drive or even as
Rob mentioned you you take a snapshot
with a CD or DVD and you pop that in and
you can run your entire OS virtually
from the environment now you still have
to store your uh data potentially to a
thumb driver or an external device but
that is another option you could do uh
to kind of be virtual uh and not lock
down to a particular environment
yeah that's a good point I've forgotten
about that I I used to use that back in
the day where I had a full bootable and
it was it was an emergency kind of thing
but it was like if I needed to I could
plug that I it was you plug the hard
drive in and I could actually run off of
that for a while so I didn't have to
actually repair my machine I could just
be like screw it as long as I can get in
I'll launch it and we're ready to go uh
hopefully you're ready to go because we
are we're going to wrap this one
up and we're going to dive right back
right into our next stuff as far as
we're concerned first as far as you're
concerned it'll probably take you a
little while so we're going to you get
to pause and come back and we will talk
about our next episode glad have a great
time leave us check out the show notes
for links and things like that and let
us know if you have any questions
comments suggestions jokes any of that
kind of stuff we take it all and uh we
take it under advisement we may not use
it especially if it's a dirty joke but
hey the rest of the stuff we will
probably find useful thanks a lot thank
you for your time and we will see you
again soon
[Music]