Coding Blocks - Programmer Questions and Answers
Episode Date: October 26, 2014We’re very excited about ASP.NET vNext, we’ve never been seen together, and a cute little ninja was MEAN to Allen. All that and more in this week’s episode where we attempt to answer some ques...tions.
Transcript
Discussion (0)
Why do Java programmers wear glasses?
So they can find the classes.
Because they don't see sharp.
Ah, nice.
And with that, you're listening to Coding Blocks, episode 18.
Subscribe to us and leave us a review on iTunes, Stitcher, and more using your favorite podcast app.
And go to the site at codingblocks.net where you can find stuff like show notes, examples, and great comments.
Send your feedback, questions, and rants to comments at codingblocks.net where you can find stuff like show notes examples and great comments send your feedback questions and rants to comments at coding blocks.net and follow us on twitter
at coding blocks or head to www.codingblocks.net and you can find our social links at the top of
the page and with that welcome to coding blocks i'm alan underwood i'm joe zach and i'm michael
outlaw and today uh we've got some news for you. So first
off we went to, all three of us actually made it out to a meetup which never happens, but we
actually, not at the same time, yeah. Right. So we went to this. How do you know we're not the same person?
That's right. We've never been seen before at the same, when we went in place at the same time.
So I'm Superman, which one of you guys is Clark Kent? I guess I'd have to be me.
All right.
Well, anyway, it was a meetup on ASP VNEXT,
and it was a great topic,
and the speaker was actually really phenomenal.
And his Twitter name is JeffA00,
so you should go follow him.
We'll have a link in the show notes,
but we'll also have a link to the actual meetup.
But I was really amazed at all the things
that are coming down the pipe,
not just with ASP, but kind of the the overall kind of vision is really interesting and it almost seems like
Microsoft is moving towards a more um pluggable kind of platform agnostic kind of open web thing
I thought that looked really interesting and it it was a great presentation. I mean, how awesome is it going to be to write your C Sharp app and run it on Linux?
I would love that.
That's going to be fantastic.
Yeah, we talked about the hosting being cheaper for Linux and that being kind of a barrier in our last episode.
Actually, that's this episode, but, you know. but yeah i mean it seems like they're trying to draw more people into user development tools and
get them hooked into the microsoft world as far as productivity but then open it up so that you
can deploy it anywhere right so that that was i'm totally stoked about this i can't wait it sounds
awesome i love the fact that it say what you will about a lot of things out there, but I love the fact that things like Node.js and these technologies that exist are pushing companies to start
thinking a little bit differently about their products, right?
Yeah, and how about Visual Studio possibly bundling Node.js up inside it? That's pretty
interesting. I know WebEssentials does that sort of thing for running some of those, you
know, less files and whatnot.
But the thing about actually shipping is...
What's that?
It's no comment.
But along those lines,
I think we'll probably just dedicate a show
to this stuff, right?
I mean, there was a ton of information
about ASP Vite Next.
Yeah, I definitely would like to take
a deeper dive into that.
Yeah.
So on another note, so I'm feeling mean.
This is the topic I put in there.
Last night I decided to –
Somebody treat you bad?
Somebody make you sad?
Maybe.
So last night I decided to sit down after the last uh show where we were talking
about different technology stacks and going against all the sound advice that you guys gave
me to use stuff that i'm familiar with i decided to try and set up a mean stack which if you haven't
heard of it it's mongodb uh express js angular js and node js so it's basically i don't know js sounds like a whole
lot of javascript it's a lot of javascript and here's what here's what was in this this is where
things get frustrating just about always when you're dealing with linux right so i've got a
i've got a linux vm running on my mac box so i'm running ubuntu uh 1404 and i'm so glad you specified that i was
gonna ask if you get if you go to mean.io on the website it's got this nice little thing it's like
hey all you got to do is this right and you'll be up and running oh yeah go do anything on linux
and see if it's as simple as they try and tell you. Right? Like, I was frustrated. So now we're going to hate on Linux?
Hold on now.
No, no, but here's the thing, right?
Like, as I mentioned, like, cost is always a factor.
So I was like, hey, I like JavaScript.
I'm going to go ahead and do this on Linux.
Dude, how difficult could mean be, man?
It's got a cute little girl ninja on it.
Come on.
I know.
Sudo apt-get install.
And she's got a little...
That's what you would think, right?
Like, so first off, like...
Well, actually, according to their, you know, little instruction here, it's npm, but sure. It is... No, that's what you would think right like so so first off like well actually according to their you know little instruction here it's npm but sure it is no that's no package manager so that's a
little bit different yeah we're talking so so first you have to install i'm not going to go
through all the garbage that happened but basically it's like yeah you just do this this and this
okay so there were like four steps about 20 steps later i finally had the thing running
and i mean there's garbage like, for instance, on Ubuntu,
for whatever reason, they decided that Node.js wasn't going to be Node space in a command.
That conflicts with some other package that you may or may not have installed.
So in order for it to run Node.js, you actually have to type Node.js.
So all the grunt files and everything else that reference Node don't work.
See, listen, this is where your problem is.
Because the oatmeal.com had this great little tutorial on how to fix any computer.
And since you were having so much problems with Linux, I'll get to that one in a moment.
But just to be thorough, we'll start with all of them.
So if it's a Windows box, step one, you did that fix it no proceed to step two step two format
the hard drive reinstall windows lose all your files quietly weep simple that's how you fix
every windows box it's pretty accurate on a mac you know step one take it to an apple store did
that fix it no proceed to step two buy a new. Buy a new Mac. Step two, buy a new Mac.
Overdraw your account.
Quietly weep.
Hey, just so we're clear here, I'm not reading this.
That was a good guess.
Now, since you were having so many problems on Linux, okay,
this one's for you, okay?
Step one, learn to code in C++, recompile the kernel,
build your own microprocessor out of spare silicon,
which you have laying around, as you do. Recompile the kernel again. Switch distros. Recompile the kernel build your own micro microprocessor out of spare silicone which you
have laying around as you do recompile the kernel again switch distros recompile the kernel again
but this time using a cpu powered by refactored light from saturn grow a giant beard blame sun
microsystems turn your bedroom into a server closet and spend 10 years falling asleep to the
sound of whirling fans switch distros again okay because you said you were only on ubuntu abandon all hygiene
write a regular expression that would make other programmers programmers cry blood learn to code
in java recompile the kernel again but this time while wearing your lucky socks okay that's how you
fix your problem did that fix it did that fix it no proceed to step two revert back to using windows
or a mac quietly weep, that's fairly accurate.
So what Mean led me to believe was going to be a five-minute process
ended up taking me about an hour and a half.
In fairness, that's one of the reasons why I love Visual Studio,
because I feel like I can be up and running in no time using their tool set, right?
So I put it upon myself to hurt myself, to put myself through pain.
But at the end of the night, I did have an up and running mean application that had a
login and all kinds of stuff.
So it's pretty interesting.
I'm going to continue down that path and we will update this at a later time.
Okay.
So it was interesting.
So going along with the previous stack.
You think you'll push distros by then?
Probably.
Yeah, I was actually uh i decided the other night
i was going to run through an angular tutorial and the first one i find is like it starts off
like download this project now do these 20 steps and here's a video i was like oh man i just kind
of hope i could just you know read step one two three and then do my own thing but i have been
looking at ember a little bit though and what i like about i don't know if it's this is true or
not but from just looking at a couple examples it's kind of like they've got these things set up on the main website
where it's like, how do you do this?
You do it like that.
And I like that I didn't have to install.
I didn't have to set up my directory structure in a particular way.
So it looked like the kind of thing that you could, you know,
sprinkle in a little bit easier than Angular.
Now, I'm probably wrong about that, but it looks that way.
At least it seems like they're maybe marketing that way a little bit.
So I thought that was interesting. You are wrong about sprinkling it looks that way at least it seems like there may be marketing that way a little bit so i thought that was interesting you are wrong about sprinkling it in but from what i understand though what you are right about is ember kind of forces you down a path where angular lets you kind
of hang yourself depending on how you go about doing things so ember is a little bit more uh
opinionated in how you have to do things so it's it can be good but dude now that
i've gotten pretty deep into angular it's not for the faint of heart i mean like seriously it doesn't
just like give you the rope to hang yourself it's like here's the noose we've already prepared it
you just got to insert your head here in this hole right yeah yeah we'll take care of the rest
don't worry at least you know that you're not stumbling around trying to find that noose at that point right so it's it's pretty interesting um but yeah i do plan on on going down this path
a little bit further just to kind of see what this is all about because you know document databases
scare the crap out of me for some reason they just don't make sense they seem so foreign but
i think i want to play with it more for that than anything else. The next thing,
Vlad also replied to us on episode 17,
the one that we were just talking about,
and he made a couple of good points.
So we were talking about server costs and all that,
and he brought up Azure and he is,
if you don't remember Vlad,
he was on episode about aspectacular and had a great time talking to him,
but,
but he's basically just tinkering around with Azure on his own projects.
And he said he's approaching a car payment a month just messing around with Azure services.
And that is kind of one of the frustrating things about dealing with cloud services nowadays
is unless you have something making money, it's kind of hard to just learn it, right?
Unless you're working in a business
with your hands on this kind of stuff
or whether or not you have something
that's making money on a side project,
I mean, you've got to invest some money in it.
Well, I like the way of saying that.
That's something I could sell to the wife.
Like, hey, I can't go out tonight
because I'm going to work on a side project
because I want a free car.
Don't you want a free car?
Who doesn't want a free car?
Yeah. I think we were talking car payment yes yeah like you like up the ante a little bit there yeah i'm
working on getting into management oh okay this is how you do you're doing well um yeah and and
uh just to clarify uh if you wanted to go back and listen, we had a lot on episode nine when we were talking about aspect oriented programming.
And he had a framework specifically for it.
Which may have been named by Outlaw.
Maybe, maybe not.
I don't know.
We believe it was.
There might be some dispute here.
There was some drama at the local meetup.
I'm just saying.
But on top of that, another thing that he mentioned.
So Joe said that if he was going to program something, he would do a service. I'm just saying. But on top of that, another thing that he mentioned,
so Joe said that if he was going to program something,
he would do a service.
And basically his point was he doesn't want to deal with UIs.
Well, Vlad brought up a valid point that is one of the reasons why I have abandoned so many projects I've decided to start
is because one of the frustrating things for me is,
hey, what platform do I want to program for?
Do I want this thing to install on Windows?
I have a Mac. I kind of like it to run on a Mac right and then you're like well what about linux then and so then you start looking around there's not much out there that you're going to do cross
platform development on you're not going to code once and run everywhere and in the meantime six
months have passed since you started that conversation exactly and that's the whole
thing so um he brought that up like he was really hoping silverlight was going to be the answer and it died a pretty fast death actually so yeah i did like
his uh javascript zombie comment yeah or this just that just that he referenced it as a zombie i
thought it was a pretty humorous i mean and he also brought the fact that you know a new javascript
library comes out every year i think he might be a little bit off on that.
It feels like every week.
Right.
But, you know, so it was a great reply.
So you should head over there, join in on the conversation because there's a lot of viewpoints there.
And that's www.codingblocks.net slash episode 17.
Yeah.
And so with that, you know, we got some more reviews in.
So I'm not sure about the name on this one though.
I kind of wonder if this isn't just a made up name cause it still feels a
little funny if his parents named in this,
but,
his name is or her or her.
You're,
you're right.
New Belkin user writes in and says super informative and great content,
uh,
would certainly recommend to any.net developer.
So awesome. Thank you thank you uh we got another
one on stitcher uh from i'm just going to pronounce this as cash that says this is a solid podcast and
i can only assume that he's referring to the solid principles it is um and he says after powering
through their entire backlog i would recommend this podcast to any developer who's passionate
about software development one of the best detailed technical podcasts out there. So
again, thank you guys for taking the time to write the reviews. We really appreciate it.
It really does go a long way to help other people find us as well. It helps us to show up higher in
rankings and everything. And we greatly appreciate it. Yeah. And while you're doing those reviews,
don't forget to send us like we've actually gotten quite a few emails about,
hey, these are some good topics we'd like to hear about.
And if you're thinking about it,
then there's probably a lot of other people as well.
So definitely drop us an email at comments at CodyBlogs
or come up to the site and leave it on the contact form.
Definitely just get in touch with us
and let us know what you want to hear about.
And also wanted to mention, there's in the states here
there's actually a lot of whining about kind of holiday creep so the christmas stuff starts
happening around october the thanksgiving stuff starts happening and you know whatever july yeah
july and uh forget about valentine's it starts in december too so um one season that i'm not
i'm not disappointed that it's starting
early is actually gaming season so typically around the wintry christmasy kind of hanuki
months there is a just a glut of awesome games that come out trying to get your heart and harder
in dollars and it's looking like it started early we had shadows of mortar just come out which i've
heard is fantastic and uh i can't
really go into too much i've actually i've got it i've installed it oh really yeah oh man i want to
hear about it i know i'm lame i'll i'll give you the full review also defense grid 2 came out which
if you played the first it's like a tower defense game but i've been having a lot of fun online
with that uh really fun also new civilization space themed interesting yeah so i mean sci-fi and
civilization together hallelujah but you know here's my problem so every one of them that you
just mentioned are pretty much pc dude where are the ps4 games i am so irritated that i bought this
thing one year destiny dude oh god that'm a little hurt that you didn't mention
call of duty man advanced warfare yeah but like every november but hold on like that's the whole
problem right like it's the same game with new maps and new guns and a new power up or a new
ranking up system fun as heck but i mean it's kind of hard to get like stoked about about something
that you've really played for 10 years in a row now.
I mean, dude, it's got Kevin Spacey on the trailer, man.
How can you go wrong when you've got the president right there?
That's a good point.
Oh, you just gave me...
I don't know what you're talking about.
Spoiler alert!
Hey, man.
But, yeah, I mean, I i'm seriously seriously aggravated by the lack
of games i've had my ps4 for going on a year now and there still is not like that one killer gotta
have game that's the one thing why i haven't i haven't decided to break down to buy either hold
on playstation playstation 4 nor the xbox one and and it's mostly because like why bother yeah hold off i mean
seriously the the only game that has just got an outstanding review on the playstation 4 that
there's a couple but the only one that got like a 10 anywhere was the last of us that's on the ps3
oh that was a good game though it is a good game but like seriously all they did was bump up the
graphics on it and you know it's. That's what I'm saying.
It's so frustrating.
They haven't really brought anything to the table yet, which is irritating me.
Yeah, I've just been holding it.
I am more leaning to the Xbox One now.
I don't understand that, but whatever.
It's got less processing power, dude.
If you're already into the Xbox community, right, why not?
Well, have you guys heard of No Man's Sky?
No Man's Sky? No Man's Sky. No. The description is a science fiction game set in an infinite procedurally generated universe.
Oh, screw that.
Oh, man.
That's my heaven right there.
That's perfect.
So you like, oh, man.
What's that?
The medieval game where it's like 600 plus hours.
I prefer if there's aliens.
I always prefer aliens over orcs
But you want something that just literally generates itself
So there can't be a storyline
Oh story I don't want story man
You just want to roam around
Like playing Grand Theft Auto though
You don't get tired of running over people for like 30 minutes
No man because you know the best thing about Grand Theft Auto
Is you try to see how high can you get your wanted level up
And then bring it back down
Yeah you gotta hot seat that one like you die you hand it over man that's that's the fun like i
get tired i'm like oh man i feel obligated to go do this stupid quest and i don't want to do it
i have more fun playing grand theft auto not doing what i'm actually supposed to do in the game well
that's what i'm saying but after you've done that like after you got that for hours on end man really
i just drive around like a madman hold on trying to see if i can evade them
i like to race so you got to keep that in mind too well no no let's clarify something are you
one of those guys that likes to play nazi zombies on on call of duty no okay all right that's just
mindless repetitiveness i can't take it like i need something new no No, but again, like, in all honesty, like, racing games, racing simulation games are my favorite games on any kind of platform.
And while in Grand Theft Auto it's not simulation, it's just another – it's fun how some of the cars handle.
And so, like, I'll just have a blast driving around trying to see how high can I get the wanted level up, and then can I get it back down?
It becomes a challenge to see if I can bring the level back down.
I get it.
If I can outrun them enough to bring it back down.
I get it, but I bore after about 30 minutes of that.
That's how I kind of want to play games now, too.
It's kind of strange how my preferences have changed.
Just mindlessly wander the map?
Yeah.
An infinite world just seems overwhelming to me.
Yeah. All right. And so with that, let's get wander the map. An infinite world just seems overwhelming to me. Yeah.
All right.
And so with that, let's get into the show.
Today's show is going to be Q&A.
Your questions and Joe will answer.
I'll try.
We've actually got a lot of comments and questions kind of emailed to us.
And some of them kind of involve more research.
And so we don't want to just kind of give you something off the cuff,
but didn't want to kind of mention and respond to a few of them yeah so one of them that i i
actually really liked was from jason yarber he asked pluralsight versus lynda.com so we talk a
lot about pluralsight on the show for good reason i and i've also had some experience with lynda.com
i think you have also outlawed and probably you too joe yeah so it my take on it is this lynda.com i think you have also outlawed and probably too joe yeah so it my take
on it is this lynda.com is an absolutely fantastic resource and it the way that i see it though is
it's more of a broad spectrum of technology software how to's like that's usually my go-to
source for hey how do i do something in final Cut or how do I do something in Photoshop?
It's funny you mentioned Final Cut because I was actually thinking of Color.
Yeah.
Which is no longer around for Final Cut Studio.
Yeah, so, I mean, they have a lot of stuff.
Now, they also have programming things, but they are not programming-centric.
So, if you go to something like a plural site i mean just about and they do have
things that are outside the realm of programming but 90 of what they've got on plural site is is
hardcore programming whether you're talking about dot net or you're talking about sql server this
question a step further though right so i mean specifically it was plural site versus linda
yeah but what if you were to just say, like, how do you stay current?
Like, what's your training go-to?
You know, like, how do you get your learn on?
Codingblocks.net.
No, really, though.
Not really Codingblocks, but really podcasts are my preferred way.
Like, I can listen in the car, and I just seem to really get out of listening.
But I have a hard time sitting and watching a video.
That said, I do subscribe to Pluralsight, and I really like it.
But the reason is I'll basically play a video game on one screen,
something like maybe Minecraft or something that doesn't require a whole lot of interaction.
And I'll have Pluralsight on the other screen.
I'll just kind of be learning about something new and random.
Well, in fairness, like the way that I do Pluralsight is I pay for the higher cost subscription
on there and then that way you can download it to your phone.
No, but I mean, that's really, there were two reasons I did the $50 a month one was
because-
You wanted to take the test.
No, I don't care about the test, right?
Like I seriously, I don't want to take tests, but you can download the code, which is awesome for being able to follow along with whatever they're talking about.
And second, more important to me was being able to download it to your phone so that just like I listen to music or a podcast in the car, I can listen to an entire course while I'm driving.
Granted, I'm not looking at the screen, but a lot of times you can pick up what they're talking about, you know, as you're going along.
So that's kind of how I do it now with lynda.com. I have
found that is very much more you're sitting down and watching this. And it, again, this is usually
how you're dealing with software as opposed to how to program. I haven't done many of their
programming courses, but I've used them both separate, excellent resources, both of them,
in my opinion. So I'm going to be the old school one here to say, you know, crack open a book.
Yeah.
You know, here's my problem with books is you don't know how good it is till you buy it.
Now, granted, you can look at reviews, right?
And that's helpful.
But, dude, I don't know.
I would rather listen to somebody talk about it or watch something.
Yeah. And actually, just for fun, I Googled.
I searched on lynda.com for BizTalk, which is something I recently started watching on
Pluralsight.
And, Lynda, I'm not seeing any search results, but Pluralsight had like 30-plus hours of
BizTalk videos.
What about SharePoint?
Oh, they both have a lot of SharePoint.
The point that I was going at, though, is that I love podcasts you mentioned, Pluralsight.
I love those type of resources, but I think when I want to go into real depth with a topic, then that's where I prefer to read about it.
I would agree. I feel like if I'm actually stopping to actually read the words on the page
and I'm not counting Audible or something like that
but if I'm actually taking the time to read the words on the
page then
I'm more focused in on it.
So if I'm trying to get deep
on a topic then
I like the book.
See I'm bad when I read about
skipping ahead and being like blah blah I got it and then I
miss important details.
See I'm actually bad the opposite way of that because even if this is like oh my god how many times have i got to read this again i'll keep reading it just to get through
it just in case there's some little gem that i'm like oh well i'm glad i read that a book has to be
really enticing for me to go with it and i'll give you this one reason because my 50 at plural site
i can go pick any course i want and watch it listen to it as many times i want a book i'm
spending 50 on one writer and i'm and i'm hoping that he gives me everything i want right so
that's kind of how i equate it like if i was going to spend 50 a month let's say on whether
it was going to be a book or one of these course type things, I would go with the course site because your, your, your breadth of, of topics is just massive.
Don't get me wrong. I love Pluralsight. Right. And, and I, I have, I think the same, um,
you have the same plan, same plan as you have. Yeah. Sorry. But, uh, you know, it's awesome.
And I love it. And I, and the thing that i like about it is that it's
easy to reconsume it yes right like like you can go through it it's kind of like like i said it's
not you're not trying to go as deep with it so you can you know have it going on in the background
like you mentioned while you drive there are times where like i'll have it while i'm coding
yeah i'm like oh wow i can do that too and then that way i'm actually picking up the shortcut as i'm actually working and you can speed it up right like it's just like a podcast
you can listen two times that's craziness everybody but one point speed but yeah you
can speed it up and listen to it consume it faster than what you could even potentially read right so
there's definitely something to be said like books are fantastic references right
and and i do love books but i find that i would much rather go to one of these other sites
initially and then if i want to dig more into a topic then i would go get the book
yeah okay i'll give you that and best part is uh both pearl site and linda offer like a preview
plan so you can watch videos and kind of see which one's right for you.
But I have a feeling if you're listening to the podcast,
you're probably going to end up going with Pluralsight.
It just seems to really be targeted towards developers.
If it's for programming.
If you are specifically going for programming, then Pluralsight.
If you are hitting on a bunch of things that might relate to graphical type things
or just using other pieces of software,
Lynda is a great resource
for that kind of stuff so uh the next one that we got also from jason yarber was base types versus
dot net types and outlaw you got a little something to say about this uh yeah so so
um in the c sharp language specification specifically there's a statement in there that each of the
predefined types is shorthand for a system provided type. So for example, the keyword int
refers to the struck, uh, system dot in 32, but as a matter of style, use of the keyword is favored
over use of the complete system type name. So what that's basically saying is when it gets all chunked down to IL code,
it's the same stuff.
Yeah, but you know, the thing is, though,
so this question came up, and I could have sworn that I remembered reading
the preferred way was that you should use the uh the system the type name for it
rather than the keyword so i got into the habit of using of always using the the name
and now like capital now after reading this i'm like oh crap i'm doing it wrong so in other words
like i would specify int 32 if i was god forbid not going to use var then
maybe it was in a method signature you never know well string is the one you usually see
people do the capital yeah string all the time yeah and it still seems kind of gross to me to
to do the lowercase and then like just doesn't format yeah yeah I I again, there's no wrong way of doing this.
They all compile down to the same.
It's not wrong, but what I'm saying is that in the specification,
it states as a matter of style, use the key word.
Yeah.
So this, you know, thank you, Jason, because now I realized, oh, crap,
I'm doing it wrong.
Yeah.
Like all these years.
Again, they equate to the same thing.
Yeah, but the best reason, I think, for using the actual aliases is that So like all these years, again, they, they equate to the same thing. Yeah.
But the best reason I think for using the actual,
like the aliases is that you don't have the rest of reference system.
So if for some reason you've got a class that doesn't need it,
maybe it's nice and solid.
Then,
uh, you don't actually have to use the,
the system namespace.
So if you,
all the others,
like in 30,
integer 32 string,
all those actual,
like the classes,
the,
the non alias, all are live in that system namespace.
So you have to be using it.
Okay.
So hopefully that answered that question.
And then another one.
Sorry, one other thing I did want to mention too.
There's actually a whole lot of stuff out there about.NET types and the unified type system.
And we talked a little bit about value times reference types.
But there's also this notion of things that are cls compliant which is a common language system which means
things that are in c sharp that work specification specification that work in all those languages so
there's actually a lot of really cool stuff there so i'd like to really expand on this in a future
episode and wanted to thank jason for kind of bringing this to our attention it's something
that's really interesting and actually a really big deep topic. Yeah, thanks Jason. I gotta
go change all my types.
Now that's going to be a fun Reg X.
And then we also have
one more question from John Panning
and he was asking about
one of Joe's very favorite topics.
Which is? Oh yeah.
So he was asking about basically best practices
for unit testing and integration testing.
Stop.
I totally want to do this one. It's a
dedicated episode.
Me too. Actually, I wrote notes for it when we first
started talking about doing the show because I'm kind of a nut about
talking about testing, even if I don't always do it.
So, definitely want to talk
about this in depth and we want to acknowledge
the email, John. So, thank you very much.
We are definitely going to do it.
I think you brought up some
other really interesting things too with like solid and kind of how these things kind of tie
in together and so I thought that was really cool and we're definitely going to talk about it so
thank you John yep and so now getting into the show for the week if I can find my notes here
so this is going to be a bit of a water cooler topic type thing because there are things that come up all the time in our programming daily lives and so here's a couple things that we've actually had extended
conversations over lunch or whatever one business logic where do you put it do you put it in the
database where basically everybody can benefit from it or do you put it in your application?
Oh, and you say it like that.
I might have leaned towards something,
but I actually have arguments against what I seem like
I was leaning towards there here in a second.
Okay.
Well, wait a minute.
Because when you say business logic in the database,
I initially took that to mean like, are you referring, when you say business logic in the database, I initially took that to mean, like, let me rephrase, let me rename that to be the data logic.
Yes, the data logic, absolutely.
Because not necessarily the business logic as to how something should be done, but it's just that if you want this data, then this is the data, how it's represented.
Yeah, how it affects these 10 other tables.
Yes, and that's what I'm talking about so so the the data the business layer revolving around just how the
data interactions occur right yeah so let's just call it data logic okay fair enough so where would
you do it and why I know where I do do it and it's in the code. So why?
I have a hard time thinking of reasons or things that I would put into a single procedure
or a store procedure
just because I don't really do it that often.
There's definitely times,
but usually that's some sort of weird case
where I need to do something with a store procedure.
That's almost like a requirement of what I'm doing.
But just by default, I end up doing things in code.
And I'm actually having a hard time thinking of an example
when I wouldn't do it in code. Are we talking
about I delete from table A and it's got to
delete from its children?
Yeah, or let's say
in order systems, right?
If you place an order on something,
then you're going to decrement some available
quantity of something somewhere. You're going
to stage things to be shipped
out. There's a lot
of table interaction that happens, right?
I think some of that depends, though, on the type of information
and the sensitivity of the information because you might have that
abstracted away through maybe your more sensitive data.
Like an application layer.
Because it's sent in the database because at rest you don't want it to be available.
So you want to have some other control mechanisms around it.
So maybe that has to go through some kind of a service to even get to it.
But because of the example that I was thinking where you might do this is that –
well, I didn't have a specific example.
Well, I was thinking around customer information that you might end up pulling that from multiple places.
But as far as your code is concerned, you don't want your code to have to care about that that might have come from multiple sources.
But as far as how you might want your data structured, maybe you want some stuff separated out.
But it's one of those things so for instance one of
one of the arguments that always comes up and this is what's always kind of crazy to me is
it's people that advocate that it's done at the um at the application they're like well it should
live in the application that's that's what's touching it right well my thing is okay so yeah
you got this application today but now you want a mobile version of that what are you going to do yeah how many applications are touching a database
right you know a certain table it's going to be like every application right well i mean we've
talked about this before but um you know there were some years ago where i was on a project
that everything you did everything whether it was read or write all your correct operations
were done through store procedures and the part that i really liked about that you know architecture
decision was that um you know we could make changes to the underlying schema and it affected
zero code right ever because as long as we took the same parameters in and the same parameters out
everything continued to work.
And I love that about it. And if we needed to have any of these rules around.
So you mentioned, you know, if you delete from here, do I need to delete from over there as well?
You know, anything like that could automatically be handled through the store procedure. So for that, I loved it. But in nowadays with frameworks like Entity Framework, as an example, it wouldn't be as friendly to use a sewer procedure only mechanism.
So I'll take this one step further, and I don't know which one of you just mentioned it, but services.
The way I see this is if you have one database, right?
Personally, I think that a lot of that logic should exist in the database, in a stored proc,
simply because it keeps it closest to where the data is stored, right?
Yeah, there's value in that. It's definitely the closest to the actual issue, the subject.
Now, what I will say, though, is, and I'm not against the application thing, but I think it's at least flexible.
But I think if that's what your goal is,
then in today's world of service oriented architectures,
I think you create a service.
You stand up a service that is now a layer between you and the database.
And then that way,
if you do happen to have that and you don't want to keep it directly in the
database,
because then you'll have other people, well, what if you need to move from SQL Server to Oracle?
I would venture to say that happens less frequently than changing programming languages, right?
Like, already BMSs tend to hang around for a long time.
Yeah, you better have a really good reason for switching.
Yeah, so in that regard, though, if you stand up a service that any application can then call,
then you get the best of both worlds.
Like what Michael was talking about where now you have a separation of maybe sensitive information,
like keys for passwords are stored in one system,
and then your actual passwords in your hashes are in another.
Then a service can talk to the two of them more transparently,
and now you have your logic in one place that a mobile app can use,
that your desktop app can use, whatever.
So this whole argument...
But the question becomes, where do you draw the line for those services there?
And that's a tough thing, because there's a lot of overhead in building a service.
There's a lot of work that has to be done.
There's a lot of things that have to happen when you build these services.
But I think... And there is a line, but I think that the application is almost always the wrong choice, in my opinion, on where you store that kind of logic.
Because then it's all buried in your app.
And as soon as you ever decide to move to another platform or you decide to add another supported platform to your current existing tools
now you've got to replicate that somewhere and it's all baked into your application and it's
not reusable right and that's where the advantage of you know where we had it all in store procedures
it didn't matter what language we used as long as everyone understood the rule of you always call the stored procedures,
and the stored procedures were very clearly named just for what kind of actions they did,
so it took some diligence there, but then it didn't matter what language we used.
Everyone could use any language they needed for whatever kind of report they wanted to do
or whatever app that they were spinning up, but everything worked the same.
Everything had the same data to work with consistently.
I'm actually a fan of that approach.
Assuming that you are on one database server,
as soon as you start spanning across multiple systems
and you have to pull data in from various different places,
that breaks down a little.
Well, I will say, though, in that particular case, though,
we didn't have sensitive data to worry about at all.
So you mentioned
passwords I mentioned customer information like we didn't have any of
that to deal with at the time which greatly simplified the discussion yep
yeah actually what you just touched on there is I thought was really interesting
I think a lot of times consistency is really powerful so I've seen some like
not so great code that was consistent,
and so at least I was able to kind of dive in there
and see what was going on, and it was in a good pattern.
And having that pattern to follow,
and follow when you're doing something new is really good.
And so I just wanted to be the first to actually coin the term
consistency-driven development.
So you guys heard it here first?
CDD, huh?
Yeah, because you ever go into a code base,
and it's really nasty and messy,
but you're not about to start changing the naming conventions for variables or anything like that, right?
You want it to kind of blend in.
Right.
Yeah, there's a lot to be said for that.
And at least then if you do pick one, whether it be the database or –
again, I advocate that you never do it at the application level,
simply because that is almost – you can almost consider that lost code at that point
because you can't reuse it anywhere, right?
And I've definitely had heated arguments
with other people about that,
but it feels to me like
that's the most disconnected place to put it.
You know, I used to think the whole source code thing
is kind of a big deal,
being able to kind of see those changes.
With the database projects and stuff in Visual Studio
there's tools around that sort of thing that make it
bearable but
I don't know if anyone actually really likes
using the database projects in Visual Studio
so it's kind of nice for tracking changes
on stuff like that but I don't want to have to search two
code bases and I definitely don't want my database in my
normal solution.
What's our next one that we had?
Oh, I just had a kind of general secret question
that I put here.
And this is actually a question for me.
I didn't write it in.
Sorry, maybe I'll send an email.
But I was just wondering...
No, you got to send it to comments at CodingWise.
That's right.
I'll email Rob to the show.
Pause.
Yeah.
All right, we're back.
We just got this email from Joe.
And Joe writes in.
Yeah, I wanted to know
if there was a good, useful tool for auto
linking foreign keys. If you've ever
done a new database, right, and you're
kind of green filling, you do all this stuff, and you
have things on the tables like, say,
modify by or create
by and date times, and all this
stuff is default values and all
your integers to be uh you know auto incrementing and yeah that's a lot of stuff to to type
especially like if you have you know create and modified users in every table and you want those
to all link to the user table like oh my gosh they have the same name or you know there's a
pattern to actually be able to kind of like rightclick and just hook up all those forward keys for me.
You know, especially if the names are exact,
like there's a product ID here and there's a product ID over there.
Like, oh my gosh, please let me click a button.
Product ID.
Yeah, I have not found a good way of assigning keys.
You know, the easiest way I think is to use the diagram actually and drag things
and so you can kind of drag the lines and save it all at once.
But that's still a lot of clicks, right?
It's a lot of clicks, and it's easy to kind of drag something to the wrong column and
not realize it.
That's actually a really neat idea, though, what you're asking for.
I've never seen one.
That would be a fairly easy utility to write also with schema querying and all that.
Yep.
Hmm.
Everything that ends in ID should be cross-linked.
There you go.
You just name it consistently.
I was joking, man.
Don't.
No, man.
Alan's over there thinking like, hey.
One ID to rule them all.
That's actually a pretty cool thing.
I never really thought about it like that because, I mean, yeah, when you create a table it's a lot of extra overhead writing that your foreign key constraints and all that all of a sudden all
your patient ids match up to the health code id and yeah you know what's funny is i actually ran
into this very problem recently because i'm i'm playing with postgres right now and because you
hate yourself no by the way by the way look look if it's good enough for Instagram, it's good enough for a little old man. Hey, I was just joking.
But I will say, like, their tools suck.
Like, they are terrible.
I've been using PGAdmin 3, I think.
I don't even know.
They put a 3 on there like it was something important.
I don't like it.
Like, setting up even just.
You should have seen 2.
Dude, adding a column.
You know how, like, in Management Studio and SQL Server Server You just go down to the next row and you start typing
This is the problem with
This is the same thing with Visual Studio
All of the Microsoft products
They're nice
They're good at what they do
And they get it done
Now you want to start using other tools
Now you're like, hey man
Did you know if you wanted to do this in Linux
How much more difficult it is to install a new NIC?
But, dude, no, seriously, come on.
Hold on.
Let me talk about this one UI problem.
And being a UI guy, like, UIs that don't work.
No, I don't call you a UI guy.
No way, dude.
Mr. Keyboard?
What do you mean?
Go on.
Okay, so I like using shortcuts.
But, no, i'm very much
passionate about bastardize everyone else's uis that they create because you refuse to use your
mouse yeah whatever so but no like this this thing okay what what do you have a lot of in a table
in a table schema i'm not talking about data what do you have a lot of in a table, in a table schema? I'm not talking about data.
What do you have a lot of typically?
Columns.
Columns.
To add columns in PGAdmin 3, you have to click this button to pop up a window.
Oh, no.
So you can then type in the column name and then choose the type.
Oh, no.
That's what I'm saying, dude.
A lot of times I create the columns first and I go back and then it's string, string, string. That's what I'm saying, man. Oh, no. That's what I'm saying, dude. A lot of times, I create the columns first,
and I go back and then int, string, string, string,
or mark our.
That's what I'm saying, man.
Oh, no.
OK, so check it out.
This actually drove me to where I was creating my tables using SQL.
I was like, create table.
I started typing it out because I was like, I can't use this UI.
So I don't even know what tangent threw me off. so yeah this auto linking thing so after adding like five columns to a table
and that taking me 10 minutes i was like i can't take this anymore and then i saw the foreign key
tab and i was like oh no because you all this i think you said it wrong i am oh no yeah i know
exactly how you feel.
Yeah, I recently did something.
I created, I don't know, it was like 50 tables or something.
And man, oh, that means there were 100 create and modify by users.
But it kind of really makes the question, though,
if you did do all your creates in a textual format to begin with,
then you'd have the ability to easily copy that and reproduce it somewhere else,
version it if you wanted to.
But even the pasting with the
foreign keys, they each have their own name.
You have to rename them and all that.
I could totally see writing a tool
and this probably wouldn't even take that long.
I think I'm actually going to
dream about this tonight.
We could make those scripts and then
step three, i don't know
i mean it's beautiful think about it though like seriously what he's talking about you have you
have id columns on these things you say hey hook these up right just got that wait what did you
say i totally missed it we had that tweet uh that it was like starting a project it's like step one
procrastinate step two go step one but uh i was just joking that like we you know step two is
like create this tool step three i don't know step four profit we all retire yeah we're there
you get a database you get a database see that's the problem though like right we we all start
these and joe and i were talking about this before the show like he said that he was sitting there
and started messing with something and all of a sudden he's dragging some buttons around yeah oh man and i did the same thing but i was sitting there i don't know
how many database tables i've made in my lifetime but the other night i'm sitting there i'm like
man i'm creating a schema and like two tables later i'm still staring at it like an hour and
a half later i'm like why why am i doing this so anyways uh yeah so that's a really cool idea uh moving on to the next one uh
what do you do with unexpected project handoff yeah so uh I recently had an issue where I kind
of like in the middle of something it was it was kind of like hey uh we need to kind of drop this
hand it off to someone else this has happened lots of times but um you know I kind of it got
me thinking like you know what's nice to have?
And so I kind of wrapped up the database and the project and kind of wrote up just a few minutes.
So, like, here's how you kind of start it and install it and put it on a thumb drive.
But then I started thinking, like, oh, I should mention that class that I really don't like.
It's got a bad name.
I've been dealing with it.
But I don't want them to think that I think that's okay.
And so I started writing all the stuff I don't like about the project, which just kind of seems silly, you know?
I know there's always dirty things in every project,
but then I started getting a couple of cases like,
okay, I've listed like five things
I wanted to mention about names I didn't like
or things I wanted to change
that hadn't got around to changing.
And then I'm like, wait a second,
what about all the things I didn't mention now
that I just forgot right now?
Does that mean if he sees something stupid
and it's not on my list
that it meant that I meant to do it?
Or am I just living in my head too much?
I think it might be part of that.
Well, I was going to say, like, you know, because as far as the unexpected project handoff,
as the receiver, you just hand it back.
No, thank you.
Got my own.
That, friends, is solid advice.
Yeah.
But you know what? Actually, I've been handed off projects from Joe, and he actually goes over the top with it,
which is pretty good because it makes it easy for a developer to pick up.
However, we all know this.
You can be told a thousand times how something works, and until you actually get your head in there, it's impossible.
Now, it is nice to point out the the gotchas right like i would completely agree with that and even having like
maybe a wiki article or something together that's like hey to even get upset to get set up and run
this thing these are the kind of steps you need to go through and then i definitely think probably
in times you're overthinking because yeah you're like oh you need to watch for this you need to watch for this and again there's
there's only so much detail you can put into that before people actually start
looking at the code yep I saw back is there's one thing I was like I was kind
of deprecating a project but I just hadn't done it yet I just kind of
decided I wanted to do things a little differently so you know I kind of moved
a few things over but I just hated like when I handed off like oh and there's
this weird project that I'm kind of getting rid of but i haven't gotten rid of yet but you should totally
get rid of it and oh and over here is the forest of interfaces though don't go in there
that's interesting i mean nobody likes getting handoff type stuff anyways because that usually
means that you know you're getting it for some reason's like, I got to do all the fun stuff, now here you go.
Right.
It's on you now, sucker.
Right.
This question has actually come up on Stack Overflow, too.
There's a checklist that they provided,
and obviously the community has agreed on the appropriate answer for that.
And they state that the important points
to document are the interfaces the build process other tooling what's not done and other resources
that are involved yeah that makes a lot of sense there's also some kind of weird emotions that
come into play there because like on one hand you're kind of handing something off like you're
there's always a fear like they're gonna get in there and be like, you're an idiot. I just kind of erased all this stuff and got it done in a day.
There's definitely that feeling like, that's my baby.
Yeah.
I'm not done with my baby, and now you're going to get in and mess with my baby.
You can't touch my baby.
No, but there's two ways, right?
What you're just talking about, that happens when you actually had time to put into it, right?
But I've definitely had those situations where they're like yo we need this done yesterday well no but this is i'm talking
about like as the person doing the project handoff right right i'm i wasn't done with it which is why
i'm handing it off and now i'm like oh no but that's what i'm saying there's two approaches
that's one because you actually had the time and the love and and care to put into it i've
definitely had ones where like seriously you know i they're like hey we need this now and so you end up hacking together a solution to make
it work and then you hand it off like you hand it off don't judge me bro no seriously like those
are what you every i know you've done things yeah every every sentence you start with is like look
dude i understand this is not right listen yeah i've
seen things yeah but i mean that's frustrating so there's both sides of the equation and i think
both actually what you just those those guidelines kind of that you had up there
those will have a link to that in the show notes too uh from stack exchange those are really good
things so yeah that's a really good question and oh i did want to mention one other thing too
there's also the sense of validation too if you're like having a tough time with something
and someone's fine like just hand it off and you need to work on something and the second person
has problems with it too and it takes them a long time then you're like yes it wasn't me
it's actually hard i told you guys you didn't believe me i told you but dude that's not fair
when you gave it to an intern. Come on.
Yeah, but I do understand what he means, though.
It's almost like you drove an 800-mile trip, and someone else has to park it into the driveway,
and you're like, oh, come on.
Yeah, yeah.
Anyone could have done that part.
I was so close.
Why didn't you let me finish?
Yeah.
Well, any problems they have, they get to say, like, well, when you gave it to me, it was
all messed up. And on the other hand, you hand it off, you get to say like, well, when you gave it to me, it was all messed up.
And then the other hand,
you hand it off.
You get to say like,
it was 99% done when I gave it to him.
I don't know what happened.
He jacked it all up.
Yeah.
Yeah.
So try not to be that guy.
Make sure your stuff works.
And it seems like it's,
it's so easy to,
for the,
for kind of like what you were alluding to there,
the blame game.
So I try to catch myself to like,
not want to be like that
right
what are the other persons like that
and you're still trying not to do it so you're like
oh what a mess they just gave me
and you're like you screwed it up but I don't want to say it
yeah but I mean
I guess because more often than not
though a lot of situations where I've seen has been like
you know someone
you know someone someone you
know goes leaves the company and goes somewhere else so then uh you know like whatever that is
people are like oh well someone so did that you're like well i don't know that that's necessarily
the reason so here's my advice go to lunch with the person don't talk about the project
that's my advice.
You'll have this weird trusting going on. Your advice is don't talk about it.
Yeah.
Never talk about the project.
That's how we do it in my family.
Never talk about the code.
Right under the rug.
We talk around it.
There's a lot of hidden emotion deep inside you.
Oh, that's excellent.
All right, so what's up with the witch host thing
who put that there which host who did that did i put that i'm gonna say alan did it i don't
remember typing that too my go-to is blame alan did i really type that which host i didn't type
that one of you guys did all right so let's talk about it anyways. Which host is the best looking?
Oh, yes.
Different host. We're talking about different hosts. Sorry.
I don't even know what we're talking about.
I thought we were talking about us.
What are you guys
talking about? Are we putting up a poll?
What else could this possibly
mean? Which one of these sweet, sexy
voices do you like the most?
I've got a buttery smooth southern accent.
That's right.
Rasping accent.
That's right.
So I assumed one of us.
So there's certain jobs that you don't want to have hear a southern accent on, right?
So there's the joke about you don't want to hear your surgeon talk with a southern accent.
All right, what are we going to do?
We're going to run around in there with a stick what had happened was
so i saw the word host and i immediately thought of myself because i'm self-centered
michael thought about operating systems i had a feeling that alan might have been thinking
web hosts hosting companies right which is why i knew this one was alan's and it was
dude i absolutely
did not recognize it that is totally your handwriting in the google doc by the way
uh so i should have said hand typing it would have been even better well this completely came
off the tracks uh i have no idea what this is if we're talking about web hosting maybe i did put
the i don't remember well we do have an advertisement on our
website for web hosting, so that's the one I'm going to pick.
Actually, SmarterASP
has really good.NET hosting for like $3
a month to host a site on, which is really nice.
AWS and Azure both
have free tiers for micro boxes,
but if you're running just a small
website, then you're going to be paying...
Or you're leaving out Google Compute.
No one uses that not not in our
listeners not not the the uh dot net heavy static program language users what about our java
listeners what are they using uh aws so here's the thing right like um yeah i i'm a fan of digital
ocean right for the for the price it's hard to beat for the computing power you get.
Now, you do have to understand a little bit about Linux
to get things up and running smoothly.
And then there's Shared Host.
If you're going cheap or whatever, there's so many of them.
We've used Bluehost.
I've used iPage.
I've used a bunch of them.
HostGator.
HostGator's one.
I've used FatCow. I've used, I can't I've used a bunch of them. I host gator host skaters. One, uh,
I've used fat cow.
I've used,
I can't even remember what other ones.
Well,
I think the right answer to this question is just not good daddy.
They've had a lot of security breaches over time.
I just,
I don't even know why I say that anymore. I just,
I remember people telling me like never go with the good daddy hosting.
And I don't,
I don't know why that would have been,
but they definitely had some security problems in the past.
It's probably because they upsold you on it
and you accidentally ended up signing up for something
that was way more expensive than you would have
and it doesn't quite do what you want.
The GoDaddy scandal, or not scandal, but shoot, what was it?
It was something that came out.
We were just talking about this,
where they took a stance that was against what the rest of the internet.
Oh.
Oh, what was it?
Net neutrality.
Yes.
Was it net neutrality?
I thought it was something else.
Yes, it was.
No, it was.
I don't remember.
It's also a lie note.
So, yeah, we just kind of answered a question that we didn't actually ask.
So, sorry about that, listeners.
Yeah, no idea what we were going for
there but if it's the handsomest host that's obviously me if it's hosting who knows yeah i
don't know that's and uh send us your best looking host two comments at oh no don't do that oh dear
god wow suddenly that confidence just uh got shot down no you guys saw the is
you've heard about the one plus or the yeah the one plus phone that they just recently did some
sort of oh where they the stupid marketing campaign where they said hey ladies this one's for you
send us a photo where you've written one plus somewhere on a part of your body and we'll vote
the picture up and whichever picture gets the most then we'll send you an invite to buy the phone we're not
trying to be those guys yeah apparently like they went down in flames on that one that wasn't even
their first stupid marketing uh uh scandal but yeah they um they got some thinking to do before
they open their mouth yeah i would have anyway, and we all know it.
Fair enough.
We'll just call that one a win for me.
All right.
Well, so with that, let's go ahead and get into the tips of the week and resources we'd like.
Yep.
All right.
So I'll start off with my tip of the week, and here's one.
I found this.
I absolutely love it.
This one is a Visual Studio tip, but if you use multiple
monitors, right, we've talked in the past about how I like to use all of my monitors for a single
instance of Visual Studio by just tearing off the tabs and throwing them onto other screens. So like
for example, my current setup, I have three monitors. So I'll have one main screen that I'm coding in.
I'll have another screen off to the right that I might have code that I'm referencing.
And then I'll have half of that screen taken up with like output or if I'm in a debug session,
it'll have locals and things like that, any watch variables, things like that.
And then on the third screen, i guess it technically the first screen
because it's over on my left i'll have um things that like the to-do explorers uh from resharper
so any notes that are in the code um and i'll have uh any uh test case coverage you know um
test coverage uh from dot cover and resharper open over there. And then
I'll have a small little itty bitty window that'll be used for like showing interfaces that, you
know, maybe I'm for whatever code I'm working on. Sometimes I just like to have a copy of that
interface definition handy so I can see it just as a reference point. So that's a lot of windows I
have spread out across these three monitors, right? And it's so frustrating when I'm on a laptop
and I want to take that laptop to maybe go do a presentation or whatever. And now I'm down to the
single laptop display. I feel like I just stepped back in time because I only have the one display and it's little and
I'm like ah so there's this great add-in for visual studio that I found called layouts orama
and what it allows you to do is you can create layouts for your different window positions for
whatever your choice may be for me I have a layout for single monitor and i have a layout for
triple monitors and i can just instantly switch between i can open up the little layouts uh
layouts orama windows select which layout i want to switch to and boop it just automatically
changes visual studio and it is so fantastic now i know what you're saying but michael you
could already do that there was already an import export settings option that you could do within visual studio what a hassle that is
because yes while you can do it that's also doing a lot more than just moving around your windows so
you know you might have changed some stuff that you know since the last time you saved those
settings that maybe you don't want to be reverting all your settings for visual studio around like that oh you change settings no but what i'm saying is
like if you use the import export settings you it does the entire list of settings you could
potentially be doing more than just moving the windowing around right not to mention it's a
hassle to do that because then you have to go through this wizard driven in order to switch layouts.
Whereas Layouts-O-Rama is just simply an indie video window with whatever layouts you have listed.
And you highlight the layout that you want to switch to and then click on a little action button to switch it and done.
Right?
Yep.
So simple.
That sounds perfect for your back cave setup.
Oh, it is so fantastic.
We'll have a link to that in the show notes, but I love it. Yeah, that's pretty neat.
Very nice. So my tip of the week, this is an oldie but a goodie, and I'm always surprised when I
see someone who's not using it because it's been around for a long time, but I think it's just
kind of been forgotten, but desktop connection manager this is like a
window that keeps track of all your remote desktop settings so if you're running or running into
different boxes all the time you can actually keep them there you can organize them into folders
you can save the passwords best part is you could right click and say connect to all or disconnect
all just make sure you don't click log off I'm sure you guys
have found I don't know where this book came from but at some point there was a
bug in it I don't know if they fix it cuz I won't try it again they have not
fixed it this this program it hasn't been actively developed in a while yeah
it works so fantastic except for if you click log off the box instead of disconnect, it logs off your computer.
Yeah, things start closing and you're like, well, no.
That's not what I meant.
Who would do that?
Do you guys have a good way of stopping that when it happens?
No.
Sometimes I've noticed that if I'm quick enough, I can open up Notepad and type some stuff and it'll do the whole like, do you want to save this file?
I'm like, cancel.
I just panic. That's basically what happens. hear me over there like screaming I just throw stuff I just throw stuff it's done but just I don't know that Joe did it justice so
you can organize everything but the beauty of what what he's talking about with that program is
you can open up like you can say hey connect to these 10 computers right now and it'll give you like little thumbnails of each computer and you can just click into like you can say, hey, connect to these 10 computers right now,
and it'll give you like little thumbnails of each computer,
and you can just click into that screen and go into each one as quick as you want.
So, yeah, that's –
And you can save the file too.
Yeah, you can export the connection file and share it with other people who get to those same servers.
I mean, there's other tools like this.
Like, you know, Apple has its own version of a tool like this available for managing OS X boxes.
But I do really like this.
One thing that you didn't mention, though, is that in your – so basically on the left-hand side of the screen, you have this like explorer tree view of any of the folders that you've grouped these servers into.
And then you'll see the individual folders,
I'm sorry, servers listed.
And, you know, in each server,
you might have information about like the host and things like that,
but you could also have credentials and whatnot.
But you can also let those credentials
roll up to the parent level.
So if you're in an Active Directory environment,
for example, and, you know, all of these paths and all of these systems are going to use your AD credentials, you can just let it roll up to the parent.
And that way, you're not having to go into 30 configurations and set them manually each time.
Or any time you want to use it, have to go back and save it.
You can just do it at the one place. That way, in the selecting the 10 servers
like Joe mentioned,
and connecting, it already has the credentials that it needs.
You don't even have to put them in there. You can actually
right-click that top folder and say Connect As.
And you just type it in at that time. You could.
Which is nice.
Joe's the one who showed me that thing,
and I can't live without it now.
It's a shame it's not being developed anymore. It seemed to work really well
except for the terrible, terrible log off button.
God, that log off has hit me a few times,
and man, it is so painful.
Like, I actually think I remember hearing
Outlaw and Joe both laugh at me
as I was over there like, why?
It's one of those rare examples
when you say don't touch that button,
and you really mean don't touch that button.
Yeah, so if you get your coworkers using this using this right and all of a sudden you hear
like random cries you don't know what happened yeah it's bad all right so my tip of the week
this one's actually um i don't know fairly exciting one of the reasons why i went away
from windows phone in the first place was because i couldn't listen to podcasts at sped up rates like literally
that was the deal breaker for me the other things on it annoyed me but that was the deal breaker
like listening you to 8.1 man i'm here to tell you right now like like even listening to our
podcast at normal speed i'm like god that's so slow i can't do this like i have to listen to
me and double speed for
life yo double speed like we've talked about this is insane but but on windows 8.1 the the phone os
that just updated in the past updated no no 8.1 on the phone it just came out yeah yeah okay on
the phone just came out um this the speed play option has been in windows 8 for a while but on the phone os
it wasn't there until just recently it and it's not everywhere if you go into the podcast player
on the right side of the screen there's actually like a 1x button you can click that and you can
choose different speeds so but seeing it'll be a windows phone 10.1 right if they do that right
we don't need nine so that that's my tip of the week.
If you've got Windows Phone and you're tired of listening to us at regular speed, speed it up.
So with that, be sure to subscribe to us on iTunes, Stitcher, and more using your favorite podcast app.
And as we've said before, please give us a review.
We really appreciate that.
It goes a long way to help us out.
And contact us with a question or a topic. before please give us a review we really appreciate that it goes a long way to help us out and contact
how about that contact us with a question or a topic leave your name and preferred method to
shout out which almost nobody does so if you'd like us to mention you for that you know let us
know how you want us to throw your info out there and visit us at www.codingblocks.net where you can
find show notes examples discussions and. And this particular episode will be
slash episode 18.
And send your feedback,
questions, and rants to comments
at codingblocks.net.
And be sure to follow us on Twitter
at Coding Blocks.
Oh, I got a joke.
I got a good one.
Alright, you guys ready for it?
Let's do this.
They're skipping Windows 9.
They're going straight to 10.
That's just how awesome it is.
We did just end up on PHP for that same thing.