Detailed Notes
This is an introductory presentation to lead into one of our free classes. (https://school.develpreneur.com/p/free_courses). You can also check out our Launch your internet business series on YouTube on this channel.
You can find out more through our online classes at https://school.develpreneur.com and register for free. Registration will add you to our email list and you will periodically receive coupons for courses as well as notifications of the latest releases.
Transcript Text
foreign [Music] well welcome back and this time I want to talk a little bit about Ides now you're going to possibly ask what is an IDE and which one do I choose and that is what I want to focus on in this little lesson just some things to consider that even if you are very comfortable where you're at maybe it's time to take another look so first off an IDE is an integrated development environment think of this as a dashboard for your coding task this is what you're going to fire up when you write code now it could be a very simple editor however an IDE is going to bring you so many more features you will find yourself if you're using it properly far more productive it is going to be a lot faster to get things done now these functions these features that typically are included in an IDE include things like writing code because that's the most important thing maybe we do well writing good code I guess but most of our time is spent hopefully writing code so you're probably going to have a good editor you may have some sort of syntax highlighting and completion and some things like that which can help you very quickly understand your code and even can show you some best practices Version Control because we should all be using it so most IDs if not all of them I don't know when I've last seen one that doesn't have some sort of a Version Control integration built into it testing and debugging so a lot of the modern Ides are going to allow you to either in a a container type environment or to your you know maybe your local machine or whatever your development environment is deploy code out do some testing debugging which is invaluable I highly recommend no matter what you're dealing with understand what the debugging tools are that are available and how to use them and Ides and can sometimes make it easier to transition we'll say from one language to another because you may have an IDE that while it is it's uh basically a generic IDE it's not it has language specific features but it also is built in a way that you can use multiple languages for example maybe a C sharp and Java and if you write in those a lot particularly if you have to go back and forth and be a little bit confusing and it's nice to have an environment that just feels comfortable or the same as you're bouncing back and forth now also one of the things we do a lot is and usually if you've got bigger applications you're going to be browsing the code searching for certain classes or functions or that line of code that you need to change and so Ides are going to have searching and browsing capabilities a search is going to be typical what you're you know normally you're going to see it it's going to be searching the file search all files and then maybe in the directory or in your project and then browsing depending on what your language is and how things work that may be by class it may be by file Maybe by maybe you've got some sort of a namespace or something like that so there's some different ways that sometimes an IDE will allow you to leverage your language to search for whatever it is you're searching for and then it's also going to allow you to do updates and and organize your your application and your project so if you're in something that needs to be built or needs to connect to various libraries maybe use like a maven or something like that or if you're using a package tool like a like react node's got one python has one just about just about everybody has one every language I think spouse has one now so sometimes you need to have the the ability to go into maybe some of those configurations and some of those setting files to make sure you get the right version or that you pick the latest version to get your updates now that may seem like a lot of features and it is and so then that maybe begs the question which one do I choose particularly if most or all of them have most or all of those features that's a good question but really it comes down to you as a developer now yes sometimes this is taken out of our hands it may be our our organization our team our boss something like that that's there's some other consideration that causes us to pick a specific IDE maybe we've got a legacy project that's been built in that IDE and we really just sort of are stuck in it because it's maybe too tightly ingrained but generally speaking the goal is for you to be comfortable using it you need to understand it you need to know what it what it offers and how to use those features because the more you use it the more you leverage those things the better the value obviously of the software and then the more productive you're going to be now there are some caveats you want to look for things like a a burn in or bacon or something like that where you have which does happen sometimes you have an IDE that starts putting stuff into the code or organizing code or tweaking code in a way that the actual source code is maybe a little different so maybe it's a little fatter maybe it's a little slower maybe it's got some some tags and some things that it needs so that it can most effectively coordinate the coding however Once you walk away from that IDE that may be a problem or sometimes you may not be able to walk away the ID it may hide enough stuff or do it in a way that makes it very difficult if not impossible to take your code and go work with another ID so you you want to be able you don't get the equivalent of like a vendor lock-in now much like a language we talked about this uh there's if you haven't done it you can go check out on our our YouTube channel talk about selecting a language and there's actually many other things we talk about that are similar to this so what you want to do is shop around look what's out there figure out what IDs are there take a look at them what looks good to you pretty effective efficient whatever it is there may be some bells and whistles that you like maybe you may have like an IDE that has a integrated with email or jira or whatever your bug tracking tool is or has a really tight integration with whatever your Version Control tool is is things like that that will be selling points to you or maybe your project and again you know if you're doing multiple projects maybe you want an IDE that is much more flexible about Which languages you can code in or maybe something like you want to do something that's better with let's say windows development or something's better with web application development or mobile development so your needs are definitely going to build up some requirements but then you want to check out some get yourself a short list you know fairly short because it's going to take some time to invest and figure out which ID really is going to work for you and while you're doing that take a look at the popularity make sure that this is one that's going to be around six months from now or a year from now look at how many people use it now just because everybody uses it doesn't make it good however if nobody uses it probably not a good sign unless it's like open source and you're and you're embracing that fact because you say hey this is a good start I want to be able to extend it my own write my own code write my own IDE go for it knock yourself out once you've gotten your short list put together take the ID each of the Ides for test drive and with this it's not just you know load it run it spend five minutes doing a hello world I highly recommend you actually both things that you can do either or but ideally create a project from scratch and import an existing project in whatever language makes sense and take a look at how that works because yes the creating part is not going to happen that often if you if it has no tools to create a project so be it you can almost always start from scratch or some sort of bootstrap or templates or something like that importing a project is definitely something you want to take a look at because you probably have Legacy code that you're going to want to use that you're going to want to modify you're going to want to maintain in this idea you're selecting so you want to make sure you can pull that in it may be that you want to be able to connect to Legacy Version Control as well I ran into this way way back just as a slight side note example where I had converted from CVS I was using CVS as a Version Control and actually I was also using Source safe it was moving all of my legacy code to get and had a an environment that luckily connected to all three of those so I could go in pull stuff out strip out what I needed to of the of whatever the old you know the Legacy Version Control tags and files and such were and then you know basically then create a created as a get project and go that way so it's very useful to do with that ID which is actually one that I almost never use anymore because I've moved on to you know a different one you definitely want to be able to you know go in you're going to write or import your creator import your project but like write some code deploy stuff even if it hello world is probably going to be too simple but do some little Rinky Dink utility application or something that takes you maybe an hour or two spend some time in it and then use the debugging tools whatever tools are there get comfortable with them get so that you understand what they are and how they're going to work for you and honestly if they're going to work for you because sometimes the way we code and the way the debuggers work is not very compatible it's it's sort of square peg in a round hole now it does cost time to review these Ides consider though that it's going to be an investment and by time I mean if you've got a short list of three to five Ides it's probably going to take you a couple of weeks to actually go through them the last time I went through this kind of a process in depth I think I spent about a month or a month and a half and there weren't as many IDs out there this was years and years ago there weren't near as many options as there are now but you're also probably going to be able to eliminate some fairly quickly so it's going to take time but it is worth it because when you find that IDE that matches your your approach your style your development standards and things like that you're going to be able to find that you can be far far more productive is amazing once you start using these things how much you can get rid of like repetitive tasks and even a lot of the Mindless tasks that we sometimes get caught up in maybe as simple as like code prettifying uh you know prettify your your code and things like that where I'm going to spend a lot of time deleting spaces or converting things to tabs and vice versa and when you've got a tool that will do some of that like do intelligent formatting and correct typos and and give you code completion so you can remember what is that you know function call or that method call that I wanted to do and it can suggest stuff you'd be amazed at how much that can that can improve your time now it can end up being a little bit of a crutch however it is one of those things that you know when you're all in it's worth it maybe to have a little bit of that crutch because it's going to make you more productive you're going to get more stuff done faster and a lot of times it's going to be higher quality code as well so you have to spend a lot of time take a look even if as I started out even if you are very comfortable in your current IDE I recommend periodically and by that I mean maybe once a year or maybe every other year or something like that just take a look at what's out there because there may be something that will be a big step up from where you're at we tend to get sometimes a little too comfortable where we're at we assume that features that we would love to have that don't exist are never going to exist or some of the features we have are just always going to be clunky and you'll find that sometimes these things get solved and sometimes yes it's going to take getting an idd and finding the right plug-in but you know that's one of those things that sometimes you can do that within your given IDE there may be some plugins that are that are cross platform cross IDE where you'll find something you really like and it does exist in other integrated development environments as well so you can use that you can leverage it and you can be productive basically from you know especially from day one so this is something that we want to do to become a better developers we want to make sure that we are using the best tools available to us and we want to periodically review you don't want to you don't want to change your tool out every two to three months you don't want to be re redoing everything converting to this new IDE or its style or things like that because there is a a time lost in Switching gears from the way one does it to the way another one does it now you may look out and find one that's very very similar but that's not always the case and that is something to consider when you move into a new one sometimes things like quick keys and shortcuts and stuff like that they do have the ability for you to essentially import or utilize some other Ides quick key or key mapping which can be a huge huge benefit maybe confusing if somebody else sits down at your desk and starts using that IDE that's used to using the you know maybe the default key settings but for you it works great and hey you don't need to share your development environment with somebody else that often anyways so I hope this was helpful for you you can check out we've got several blog articles over the years at developer North site about Ides about varying development tools so that may be a great way for you to start your research but there's also a few things out there where we talk about them more is not as to recommend them it's just some of that we have used and you can find some more information about those checking out some of our classes and even the free classes you'll be able to see some of these you know IDs and and see if it looks interesting you so hope you have a great day thanks a lot for your time hello this is Rob with developmentor also known as building better developers wanted to announce that we have school.developmentor.com feel free to check it out if you like any of this information any of the content that we've sent and you would like to see more you can come out you can enroll for free we have free courses we've got places for you to get better at just learning a technology or how to's you can work on your business skills we can help you with becoming a better developer as encoding and things like that a lot of the stuff you've seen on YouTube we also have out at school.developpreneur we always have it in a little more of a educational format and a way for you to track your progress as you move forward becoming a better developer foreign
Transcript Segments
foreign
[Music]
well welcome back and this time I want
to talk a little bit about Ides
now you're going to possibly ask what is
an IDE and which one do I choose and
that is what I want to focus on in this
little lesson just some things to
consider that even if you are very
comfortable where you're at maybe it's
time to take another look
so first off an IDE is an integrated
development environment think of this as
a dashboard for your coding task this is
what you're going to fire up when you
write code now it could be a very simple
editor however an IDE is going to bring
you so many more features you will find
yourself if you're using it properly far
more productive it is going to be a lot
faster to get things done
now these functions these features that
typically are included in an IDE include
things like writing code because that's
the most important thing maybe we do
well writing good code I guess but most
of our time is spent hopefully writing
code so you're probably going to have a
good editor you may have some sort of
syntax highlighting and completion and
some things like that which can help you
very quickly
understand your code and even can show
you some best practices Version Control
because we should all be using it so
most IDs if not all of them I don't know
when I've last seen one that doesn't
have some sort of a Version Control
integration built into it
testing and debugging
so a lot of the modern Ides are going to
allow you to
either in a a container type environment
or to your you know maybe your local
machine or whatever your development
environment is deploy code out do some
testing debugging which is invaluable I
highly recommend no matter what you're
dealing with understand what the
debugging tools are that are available
and how to use them and Ides and can
sometimes make it
easier to transition we'll say from one
language to another because you may have
an IDE that while it is it's uh
basically a generic IDE it's not it has
language specific features but it also
is built in a way that you can use
multiple languages for example maybe a C
sharp and Java and if you write in those
a lot particularly if you have to go
back and forth and be a little bit
confusing and it's nice to have an
environment that just feels comfortable
or the same as you're bouncing back and
forth now also one of the things we do a
lot is and usually if you've got bigger
applications
you're going to be browsing the code
searching for certain classes or
functions or that line of code that you
need to change and so Ides are going to
have searching and browsing capabilities
a search is going to be typical what
you're you know normally you're going to
see it it's going to be searching the
file search all files and then maybe in
the directory or in your project and
then browsing depending on what your
language is and how things work that may
be by class it may be by file Maybe by
maybe you've got some sort of a
namespace or something like that so
there's some different ways that
sometimes an IDE will allow you to
leverage your language to search for
whatever it is you're searching for
and then it's also going to allow you to
do updates and and organize your your
application and your project so if
you're in something that needs to be
built or needs to connect to various
libraries maybe use like a maven or
something like that or if you're using a
package tool like a like react node's
got one python has one just about just
about everybody has one every language I
think spouse has one now so sometimes
you need to have the the ability to go
into maybe some of those configurations
and some of those setting files to make
sure you get the right version or that
you pick the latest version to get your
updates
now that may seem like a lot of features
and it is and so then that maybe begs
the question which one do I choose
particularly if most or all of them have
most or all of those features
that's a good question but really it
comes down to you as a developer now yes
sometimes this is taken out of our hands
it may be our our organization our team
our boss
something like that that's there's some
other
consideration that causes us to pick a
specific IDE maybe we've got a legacy
project that's been built in that IDE
and we really just sort of are stuck in
it because it's maybe too tightly
ingrained
but
generally speaking the goal is for you
to be comfortable using it you need to
understand it you need to know what it
what it offers and how to use those
features because the more you use it the
more you leverage those things the
better the value obviously of the
software and then the more productive
you're going to be
now there are some caveats you want to
look for things like a a burn in or
bacon or something like that where you
have which does happen sometimes you
have an IDE that starts putting stuff
into the code or organizing code or
tweaking code in a way that
the actual source code is maybe a little
different so maybe it's a little fatter
maybe it's a little slower maybe it's
got some some tags and some things that
it needs so that it can most effectively
coordinate the coding however
Once you walk away from that IDE that
may be a problem or sometimes you may
not be able to walk away the ID it may
hide enough stuff or do it in a way that
makes it very difficult if not
impossible to take your code and go work
with another ID so you you want to be
able you don't get the equivalent of
like a vendor lock-in
now much like a language we talked about
this uh there's if you haven't done it
you can go check out on our our YouTube
channel talk about selecting a language
and there's actually many other things
we talk about that are similar to this
so what you want to do is shop around
look what's out there
figure out what IDs are there take a
look at them what looks good to you
pretty effective efficient whatever it
is there may be some bells and whistles
that you like maybe you may have like an
IDE that has a integrated with email or
jira or whatever your bug tracking tool
is or has a really tight integration
with whatever your Version Control tool
is is things like that that will be
selling points to you or maybe your
project and again you know if you're
doing multiple projects maybe you want
an IDE that is much more flexible about
Which languages you can code in or maybe
something like you want to do something
that's better with let's say windows
development or something's better with
web application development or mobile
development
so your needs are definitely going to
build up some requirements but then you
want to check out some get yourself a
short list you know fairly short because
it's going to take some time to invest
and figure out which ID really is going
to work for you
and while you're doing that take a look
at the popularity make sure that this is
one that's going to be around
six months from now or a year from now
look at how many people use it now just
because everybody uses it doesn't make
it good however if nobody uses it
probably not a good sign unless it's
like open source and you're and you're
embracing that fact because you say hey
this is a good start I want to be able
to extend it my own write my own code
write my own IDE
go for it knock yourself out
once you've gotten your short list put
together take the ID each of the Ides
for test drive and with this it's not
just you know load it run it spend five
minutes doing a hello world I highly
recommend you actually both things that
you can do either or but ideally create
a project from scratch
and import an existing project in
whatever language makes sense
and take a look at how that works
because yes the creating part is not
going to happen that often if you if it
has no tools to create a project so be
it you can almost always start from
scratch or some sort of bootstrap or
templates or something like that
importing a project is definitely
something you want to take a look at
because you probably have Legacy code
that you're going to want to use that
you're going to want to modify you're
going to want to maintain in this idea
you're selecting so you want to make
sure you can pull that in it may be that
you want to be able to connect to Legacy
Version Control as well I ran into this
way way back
just as a slight side note example where
I had converted from CVS I was using CVS
as a Version Control and actually I was
also using Source safe it was moving all
of my legacy code to get and had a an
environment that luckily connected to
all three of those so I could go in pull
stuff out strip out what I needed to of
the of whatever the old you know the
Legacy Version Control tags and files
and such were and then
you know basically then create a created
as a get project and go that way
so it's very useful to do with that ID
which is actually one that I almost
never use anymore because I've moved on
to you know a different one
you definitely want to be able to you
know go in you're going to write or
import your creator import your project
but like write some code deploy stuff
even if it hello world is probably going
to be too simple but do some little
Rinky Dink utility application or
something that takes you maybe an hour
or two spend some time in it and then
use the debugging tools whatever tools
are there get comfortable with them get
so that you understand what they are and
how they're going to work for you and
honestly if they're going to work for
you because sometimes the way we code
and the way the debuggers work is not
very compatible it's it's sort of square
peg in a round hole
now it does cost time to review these
Ides consider though that it's going to
be an investment and by time I mean
if you've got a short list of three to
five Ides it's probably going to take
you a couple of weeks to actually go
through them the last time I went
through this kind of a process in depth
I think I spent about a month or a month
and a half and there weren't as many IDs
out there this was years and years ago
there weren't near as many options as
there are now but you're also probably
going to be able to eliminate some
fairly quickly
so it's going to take time but it is
worth it because when you find that IDE
that matches your
your approach your style
your development standards and things
like that you're going to be able to
find that you can be far far more
productive is amazing once you start
using these things how much you can get
rid of like repetitive tasks and even a
lot of the Mindless tasks that we
sometimes get caught up in maybe as
simple as like code prettifying uh you
know prettify your your code and things
like that where I'm going to spend a lot
of time deleting spaces or converting
things to tabs and vice versa
and when you've got a tool that will do
some of that like do intelligent
formatting and correct typos and and
give you code completion so you can
remember what is that you know function
call or that method call that I wanted
to do and it can suggest stuff
you'd be amazed at how much that can
that can improve your time now it can
end up being a little bit of a crutch
however it is one of those things that
you know when you're all in it's worth
it maybe to have a little bit of that
crutch because it's going to make you
more productive you're going to get more
stuff done faster and a lot of times
it's going to be higher quality code as
well
so you have to spend a lot of time take
a look even if as I started out even if
you are very comfortable in your current
IDE I recommend periodically and by that
I mean
maybe once a year or maybe every other
year or something like that just take a
look at what's out there
because there may be something that will
be a big step up from where you're at we
tend to get sometimes a little too
comfortable where we're at we assume
that features that we would love to have
that don't exist are never going to
exist
or some of the features we have are just
always going to be clunky and you'll
find that sometimes these things get
solved and sometimes
yes it's going to take getting an idd
and finding the right plug-in but you
know that's one of those things that
sometimes you can do that within your
given IDE there may be some plugins that
are that are cross platform cross IDE
where you'll find something you really
like and it does exist in other
integrated development environments as
well so you can use that you can
leverage it and you can be productive
basically from you know especially from
day one
so this is something that we want to do
to become a better developers we want to
make sure that we are using the best
tools available to us and we want to
periodically review you don't want to
you don't want to change your tool out
every
two to three months you don't want to be
re redoing everything converting to this
new IDE or its style or things like that
because there is a a time lost in
Switching gears from the way one does it
to the way another one does it now you
may look out and find one that's very
very similar but that's not always the
case and that is something to consider
when you move into a new one sometimes
things like quick keys and shortcuts and
stuff like that they do have the ability
for you to essentially import or utilize
some other Ides quick key or key mapping
which can be a huge huge benefit maybe
confusing if somebody else sits down at
your desk and starts using that IDE
that's used to using the you know maybe
the default key settings but for you
it works great and hey you don't need to
share your development environment with
somebody else that often anyways
so I hope this was helpful for you you
can check out we've got several blog
articles over the years at developer
North site about Ides about varying
development tools so that may be a great
way for you to start your research but
there's also a few things out there
where we talk about them more is not as
to recommend them it's just some of that
we have used and you can find some more
information about those checking out
some of our classes and even the free
classes you'll be able to see some of
these you know IDs and and see if it
looks interesting you
so hope you have a great day thanks a
lot for your time
hello this is Rob with developmentor
also known as building better developers
wanted to announce that we have
school.developmentor.com feel free to
check it out if you like any of this
information any of the content that
we've sent and you would like to see
more you can come out you can enroll for
free we have free courses we've got
places for you to get better at just
learning a technology or how to's you
can work on your business skills we can
help you with becoming a better
developer as encoding and things like
that a lot of the stuff you've seen on
YouTube we also have out at
school.developpreneur we always have it
in a little more of a educational format
and a way for you to track your progress
as you move forward becoming a better
developer
foreign