I’m testing a Mac (but don’t get all worked up) – Part 1

First, this is not me converting, not now, doubtful ever (never say never). The biggest hurdle is not could I learn to love it more than my Windows machines, it is could I learn to love it more than my Windows machines including the cost differential. I just bought a new Windows laptop about 3 months ago – one that performs exceptionally well with a 17″ screen (and don’t get me started about not even having that screen size as an option) for about $600. To buy a MacBook Pro 15″ with similar specs, I would have to spend almost 3 grand. So that means I would need to love it almost 5 times as much and that’s not even possible. I’m way past the point that the machine (or OS) I’m using is makes that big a difference in how proficient I am (it’s all just a matter of adjustment and time). That does not include the fact that I have 3 machines (2 Windows desktops and as Windows laptop, as I mentioned) I use primarily right now (not including the Mac I’m on right) – laptops will also be secondary to me, I am a desktop man fo sho.

Second, although I’ve enjoyed the experience so far, I have a purpose for this excursion into the land of Apple. I am going to try my hand at building an iOS app, because though I love Windows, I also love my iPhone 7+.

So I bought a 2010 MacBook Pro 13″ – yea, it’s old, but I got it for a steal and it performs very well I have to say (had a brand new 512 SSD in it). It is the oldest MacBook Pro that will run macOS Sierra, I believe. The machine does have some limitations due to it’s age, like it won’t run Docker, and even XCode is very slow at times. Still, I don’t think it’s harmed my overall initial experience with a Mac and for the most part, I find it interesting.

My first impression was “Hey, look it’s an iPhone, rotated, with a keyboard!” Then I settled down to learn what it can and cannot do. I’m actually a pretty decent Linux user (server), and so I keep wanting to compare it to that when I’m in the CLI, but while close, it’s a different animal there as well (I know, it’s more of a FreeBSD variant). Anyway, one thing I like and don’t like and then I’ll continue this later.

  • I like the fact that iCloud does sync much of my stuff, so it IS very much like my iPhone with a key
  • I don’t like the fact that it does not have apt-get – yes, I know I can use homebrew (and I’m using it), it’s just not the same

It’s comfortable to use, that’s for sure and in about a week, I’ll be at a conference in NY and will  give it a real test run for a solid week.

More to come…

CKEditor – Adding Content – $FC()

I wanted to be able to insert content into a CKEditor instance and on top of that, I wanted to concatenate with any existing content. Since I just had a little trouble figuring this out, so I decided to post it here for others to see.

The Solution

Because we use PrototypeJS, we have a helper function that allows us to get the value (only, no set) of an HTML element using the element ID:

So we wrote a helper function that does both get and set content of the CKEditor instance with one function:

If $sValue not set to null, the instance is updated, but either way, the current value is returned.

To make this all work together:

I love it when code is easy and just works!

Microsoft Exchange Outlook Web App – Restricting Users By Location (IP Subnet) & Group

The powers that be decided that we need to be more secure and most of our users should not be working remotely without permission, and that includes just checking email. So I had to devise a way to make this happen. I found a script somewhere online that seemed to provide such a restriction. The file to be changed is

C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Owa\forms\startpage.aspx
Of course, this is for Exchange 2010. I assume this would be similar in later versions of Exchange, but I cannot confirm.
This is my first iteration:

However, this did not work when I tried to restrict the user to group “pridedallas.com\\Outlook Web Access – Remote” – no user had access.

After much effort, I discovered that LogonUserIdentity is the Exchange service name, not the actual user name. So I modified it to this, which works great!