Microsoft Security Bulletin & Bulletin Summary Minor Revisions Issued: December 19, 2014

Summary

The following bulletins and bulletin summary have undergone a minor
revision increment.

Please see the appropriate bulletin or bulletin summary for more
details.

* MS14-051 – Critical
* MS14-052 – Critical
* MS14-076 – Important
* MS14-AUG
* MS14-NOV

Bulletin Information:

MS14-051 – Critical

– Title: Cumulative Security Update for Internet Explorer
https://technet.microsoft.com/library/security/ms14-051
– Reason for Revision: V1.2 (December 19, 2014): Corrected the
severity table and vulnerability information to add CVE-2014-6354
as a vulnerability addressed by this update. This is an
informational change only. Customers who have already
successfully installed the update do not have to take any action.
– Originally posted: August 12, 2014
– Updated: December 19, 2014
– Bulletin Severity Rating: Critical
– Version: 1.2

MS14-052 – Critical

– Title: Cumulative Security Update for Internet Explorer
https://technet.microsoft.com/library/security/ms14-052
– Reason for Revision: V1.1 (December 19, 2014): Revised bulletin
to change Known Issues entry in the Knowledge Base Article section
from “None” to “Yes”. Corrected mitigations and workarounds for
the Internet Explorer Resource Information Disclosure
Vulnerability (CVE-2013-7331).
– Originally posted: September 9, 2014
– Updated: December 19, 2014
– Bulletin Severity Rating: Critical
– Version: 1.1

MS14-076 – Important

– Title: Vulnerability in Internet Information Services (IIS) Could
Allow Security Feature Bypass
https://technet.microsoft.com/library/security/ms14-076
– Reason for Revision: V1.1 (December 19, 2014): Bulletin revised
to include Windows 2012 Server Core installation and Windows 2012
R2 Server Core installation as affected software.
– Originally posted: November 11, 2014
– Updated: December 19, 2014
– Bulletin Severity Rating: Important
– Version: 1.1
Bulletin Summary Information:

MS14-AUG

– Title: Microsoft Security Bulletin Summary for August 2014
https://technet.microsoft.com/en-us/library/security/ms14-aug
– Reason for Revision: V2.2 (December 19, 2014): For MS14-051,
added an Exploitability Assessment in the Exploitability Index for
CVE-2014-6354. This is an informational change only.
– Originally posted: August 12, 2014
– Updated: December 19, 2014
– Version: 2.2

MS14-NOV

– Title: Microsoft Security Bulletin Summary for November 2014
https://technet.microsoft.com/library/security/ms14-nov
– Reason for Revision: V2.1 (December 19, 2014): Bulletin Summary
revised to include Windows 2012 Server Core installation and
Windows 2012 R2 Server Core installation in the Affected
Software table for MS14-076.
– Originally posted: November 11, 2014
– Updated: December 19, 2014
– Version: 2.1

Surface Power Cover

I just picked up a couple of Surface Power Covers. They were on sale and it seemed to be good value to get them now. I run long Skype sessions with screen sharing and these chew up battery life. The Surface Power Covers help with that.

Power Cover

If you follow the instructions and remove the warning label on the connector, the Surface Power Cover works with Surface Pro 3 as well as the Surface Pro 2, Surface Pro, and Surface 2.  It  will work as a keyboard only for a Surface (RT) – the original.

You have to do a Windows Update to install the drivers that allow you to see all the battery information described in this article.

Surface Power Cover

Tap or click the battery icon in the desktop tray to see the charge on each battery.

The typing experience is pretty much the same as the original type cover and that’s a good experience. The overall experience is better with the Surface Pro 3 type cover with the bigger touch pad. But when battery life is a priority, I’ll make the sacrifice.

The early reports about usability of the touch pad have been alleviated by firmware updates that work on both Surface Pro and Surface Pro 3. That is, you can:
  • double tap for left-click
  • tap-drag to select and
  • two-finger tap for right-click

This pretty eliminates my need to use the buttons on the bottom of the touch pad except when I need to do a right-click drag.

I was concerned about the weight, but if I need longer battery life, I’m probably stationery. Walking around in tablet mode is a secondary concern. Traveling around I’ve found that the weight is no more a burden than carrying the power supply and it fits better in my carrying case.  It’s a relief not to be looking for power outlets before I stake out territory in a room

The Power Cover can charge the Surface while the Surface is in sleep or standby mode. That means that if I’m in an all day session where I need to walk around with the Surface, when I’m on a break, I can snap on the Power Cover and charge the Surface just like I would take those opportunities to connect it to a charger, only now I don’t need to find an AC outlet.

Here’s an excerpt from the article above describing the charging sequence.

Charging sequence

The Surface and Power Cover batteries are charged and discharged in a sequence designed to keep most of the charge on the Surface battery. Understanding the sequence makes it easier to predict how much charge to expect on each of the batteries.

Which battery gets charged first?

Once Surface is 80% charged, it starts charging the Power Cover. Then, when Power Cover is 80% charged, Surface finishes charging. When Surface is fully charged, Power Cover finishes charging. Power Cover will charge as long as Surface is turned on (sleep is fine) and connected to a power source, and Power Cover is connected to Surface.

battery charging sequence
How the batteries charge.

Which battery is used first?

When you’re using Surface and Power Cover and the Surface isn’t connected to a power source, Surface draws power from Power Cover first. When the Power Cover battery is drained, Surface switches to its own battery. Power Cover continues to charge your Surface while it is in sleep or on standby. If Surface is turned off and unplugged, or the Surface battery is completely drained, it can’t detect the Power Cover or draw power from it. If the battery on the Power Cover is completely drained, you can still use it as a keyboard.
So far, I’m very pleased with the Power Covers. I have the Surface Pro and Surface Pro3 docking stations. It’s easy to connect the Power Cover to the Surface while docked, and that’s convenient for charging the Power Cover as long as the Surface is in sleep or hibernation mode. It doesn’t charge when the Surface is off. Battery Life? From what I can see using BatteryBar, it looks like the Power Cover offers about 29 mWh to the 42 mWh to the internal battery in the Suface Pro3 for a total of about 71 mWh.   I haven’t had occasion to exhaust the system to find out how long that actually lasts, but from what I’ve seen that should be more than enough to get me through 7  or 8 hours of connected work.  That’s pushing hard.

I’m really excited about this!!

So a guy buys a cheap tablet thinking that it will cope with all of his needs..

“I have a cheap PC that has a small 32gb hard drive.”

It ISN’T a PC..

“When i first powered it on it had around 22-24gb of usable space. it crashed and became unusable and couldn’t even go into recovery to format as new.”

Yep. Minimum specs strike again..

“i created a bootable usb with 8.1 and installed it but i couldnt activate it because my key is for a crippled version of 8.1 (8.1 w/ bing). “

It’s not getting any better, is it.

“so I have tried a few times to re-install windows from scratch before I realized my code was never going to work.”

Oh the joys of ‘new ways’

“So now I sit here with 5gb usable space and no apps installed and nothing on the computer”

Brilliant stuff. Between Microsoft and the computer manufacturers, yet another user has been sent up a creek with no paddle.

“I’m guessing it’s all the old installed copies i had installed and maybe recovery partitions (that i could never access in the first place). How can i free up all this space? I’m planning on buying a full copy of windows 8.1 and starting from scratch again.”

This is the end game for so many people, and is representative of what I see in the forums all too often.

I used to allow 40gb for an XP installation plus programs and updates, but in those days there was no recovery partition and no digital cameras in the wings. Mind you, there were still some incredibly badly specified computers around where price was the most important issue and to hell with how they worked in practice.

Nothing has changed.

In the course of my business, I have backed up as much as 50gb of music, photos and documents from client machines. That’s 18gb more than the machine above holding the OS and associated junk has got.

Did the sales person in the store tell the people that a tablet would do all that a laptop could do? Hey, he/she needs the commission and says whatever it takes to get a sale. The store manager makes those rules because he/she is under the same pressure from the Area Manager. The computer/tablet manufacturers don’t give a hoot beyond ensuring that their own products will be selected first because they are cheaper.

As usual, it is the end customer who loses out. Just like auto dealers, once the product has been sold, they lose interest FAST.

In conclusion:

One has to wonder how long the excitement lasts for computer end users. My excitement with Windows 8 initially lasted two, after which all apps stopped working and refused all fix attempts and I am a skilled tech !!

In the case of the user stuff at the top of this post, the user simply ran out of space. Surprise surprise with only 32gb less the OS available to him.

What advice would you give to him? My advice is to get the laptop back out and run the updates..

Smile

Weekend reading

Comparison of database systems

Was today directed to a nice little site giving the differences between different database systems. Its a nice succinct table of features http://www.sql-workbench.net/dbms_comparison.html There is however an issue having yes and no answers to many of…(read more)
Source: Simon

Simplifying ADO.NET Data Access, Part 5

This is a continuation of the series on simplifying data access using ADO.NET.  We have a little cleanup to do around parameters before finishing up the series.

Generic Parameters

In the last article we defined the DataParameter class to represent a (database agnostic) parameter and value. At the time we used object for the type of the parameter value. This is convenient for working with parameters in a generic manner but for clients we want to use a strongly typed parameter so we will create a new, derived type from DataParameter that accepts the type of the parameter value. Under the hood we will continue to use the non-generic version but consumers of the code will use the generic version, in most cases.

public class DataParameter<T> : DataParameter
{
    public DataParameter ( string name ) : base(name, DbTypeMapper.ToDbType(typeof(T))
                                                , ParameterDirection.Input)
    { }

    public DataParameter ( string name, ParameterDirection direction ) : base(name, 
                                    DbTypeMapper.ToDbType(typeof(T)), direction)
    { }

    public T TypedValue
    {
        get
        {
            if (Convert.IsDBNull(Value) || (Value == null))
                return default(T);

            return (T)Convert.ChangeType(Value, typeof(T));
        }

        set
        {
            Value = value;
        }
    }
}

The only hard part is mapping the CLR type to a DbType. To help with this we introduce a mapping class (included in the source). For most cases the mapping class is sufficient. If you need something more complicated or extensible then feel free to replace the mapper with something else. Under the hood the mapper simply uses a dictionary to map CLR types to the corresponding enum value.


Fluent Parameters


With strongly typed parameters defined we can now switch our focus to making parameter creation more fluent. Depending upon the kind of parameter we can expose a fluent API to allow the core properties to be set.


  • Input parameters – name, type and value
  • Output parameter – name, type
  • input/output parameter – name, type and value
  • Return value – ignored

While a client could use a (raw) DataParameter<T> we’ll create a couple of derived types to represent each of the parameter kinds along with a simple fluent interface to set the core properties. Here’s the code for an input parameter.


public class InputParameter
{
    private InputParameter ( string name )
    {
        if (name == null)
            throw new ArgumentNullException("name");
        if (String.IsNullOrEmpty(name))
            throw new ArgumentException("Name cannot be empty.", "name");

        m_name = name;
    }

    public static InputParameter Named ( string name )
    {
        return new InputParameter(name);
    }

    public InputParameter<T> WithValue<T> ( T value )
    {
        return new InputParameter<T>(m_name).WithValue(value);
    }

    private readonly string m_name;
}

The InputParameter type is a builder and therefore does not derive from DataParameter. This ensures that the type is defined by setting a value for the parameter. The builder ultimately returns a concrete type of InputParameter based upon the value assigned to it.


public class InputParameter<T> : DataParameter<T>
{
    public InputParameter(string name) : base(name, ParameterDirection.Input)
    { }

    public InputParameter<T> WithValue(T value)
    {
        this.Value = value;

        return this;
    }
}

Now the client code becomes much clearer as to what parameters are being passed in and what are being returned.


var cmd = new AdhocQuery("SELECT Id, Name FROM Users where Id = @id").WithParameters(
                         InputParameter.Named("id").WithValue(id)
                         );

CAVEAT: The fluent interface around creating non-generic parameters has changed of recent so there may be some bugs that have not been found in the newer code.


Next Article


We are finished with parameters but we still have a few more areas to simplify so we will defer until next time.


DataAccessDemo.zip

How to Open Settings in Windows 10

Starting in the Windows 10 Preview 9901 build, PC settings and zPC settings have been merged and replaced with a new Settings app now.

Most of the settings you’ll want to change in Windows 10 are in Settings. Settings is organized into the separate System, Devices, Network & Internet, Personalization, Accounts, Time & language, Ease of Access, Privacy, and Update & recovery categories. You can click/tap on a category to view and change more settings for that category.

This tutorial will show you different ways on how to open the Settings app in Windows 10.

Read more…

Removal instructions for AVC Plus

What is AVC Plus?

The Malwarebytes research team has determined that AVC Plus is a fake anti-malware application. These so-called “rogues” use intentional false positives to convince users that their systems have been compromised. Then they try to sell you their software, claiming it will remove these threats. In extreme cases the false threats are actually the very trojans that advertise or even directly install the rogue.

https://forums.malwarebytes.org/index.php?%2Ftopic%2F162433-removal-instructions-for-avc-plus%2F

Removal instructions for TotalComicBooks

What is TotalComicBooks?

The Malwarebytes research team has determined that TotalComicBooks is a browser hijacker. These so-called “hijackers” manipulate your browser(s), for example to change your startpage or searchscopes, so that the affected browser visits their site or one of their choice. This one also displays advertisements

https://forums.malwarebytes.org/index.php?%2Ftopic%2F162423-removal-instructions-for-totalcomicbooks%2F

AVLab Internet Security Removal Guide

AVLab Internet Security is a rogue anti-spyware programs from the Rogue.FakeRean-Braviax family of computer infections. This infection is considered a rogue anti-spyware program because it purposely displays fake scan results, false security warnings, hijacks your web browser, and does not allow you to run your legitimate Windows applications. This scareware is promoted through web sites that have been hacked with scripts that try to install the software by exploiting vulnerabilities on your computer. It is also promoted through Trojans that pretend to be legitimate programs that are required to view an online video, but instead install the infection.

http://www.bleepingcomputer.com/virus-removal/remove-avlab-internet-security

Windows 8.x – Server 2012: Créer un groupe de tuiles

Bonjour Ă  tous,

Cette semaine, une question pratique m’a Ă©tĂ© posĂ©e par un utilisateur dĂ©butant de Windows 8.1 aprĂšs une longue pĂ©riode sous Windows XP.

“Comment fait-on pour crĂ©er un groupe de tuiles/Vignettes personnalisĂ© ?”

Il existe évidemment plusieurs méthodes pour créer ce groupe. Soit :

  • Il est crĂ©Ă© Ă  la demande des services lors du dĂ©ploiement du systĂšme d’exploitation. On se place alors dans le cas de l’entreprise.
  • L’utilisateur Windows le crĂ©e lui-mĂȘme manuellement lors de la phase de personnalisation du systĂšme.

A ce propos, si le sujet liĂ© Ă  la phase de dĂ©ploiement vous intĂ©resse, Ben Hunter (Solution Architect with Microsoft Consulting Services) a publiĂ© un billet de blog expliquant comment procĂ©der Clignement d'Ɠil


http://blogs.technet.com/b/deploymentguys/archive/2012/10/26/start-screen-customization-with-mdt.aspx
Et ici
http://blogs.technet.com/b/deploymentguys/archive/2009/10/29/configuring-default-user-settings-full-update-for-windows-7-and-windows-server-2008-r2.aspx
Egalement les pages Microsoft Technet
http://technet.microsoft.com/en-US/library/jj134269.

Ceci étant précisé, nous pouvons maintenant revenir au but de ce billet
 Voyons comment faire.

StartScreen

Il faut savoir que l’écran d’accueil de Windows n’est pas un objet figĂ©; vous pouvez ajouter, dĂ©placer, grouper des tuiles (ou vignettes) qui ne sont ni plus ni moins que des raccourcis d’applications que vous avez connus avec les versions prĂ©cĂ©dentes de Windows. A ceci prĂšs que ces tuiles ou vignettes peuvent ĂȘtre dynamiques et donc afficher des informations “temps rĂ©el”, si vous ĂȘtes connectĂ©, comme c’est le cas pour les applications Courrier, Contact, Agenda


Depuis cet Ă©cran, vous pouvez :

  • lancer vos applications,
  • Ajouter, dĂ©placer, organiser ces applications,
  • Effectuer des recherches de ces applications ou de fichiers,
  • ParamĂ©trer Windows ou votre profil utilisateur,
  • AccĂ©der au bureau de Windows (comme si vous Ă©tiez sur XP ou Windows 7),
  • AccĂ©der au Windows Store pour acquĂ©rir des applications gratuites ou payantes,
  • Utiliser Internet Explorer


CrĂ©er un groupe d’applicationsApps

  1. InsĂ©rer la premiĂšre vignette en allant la chercher dans l’affichage des applications installĂ©es. Cliquez sur la flĂšche, en bas Ă  gauche de l’écran

  2. A l’aide du clic droit de la souris, cliquez sur l’icĂŽne de la premiĂšreEpingler application Ă  ajouter au groupe puis, sĂ©lectionner Epingler Ă  l’écran d’accueil.

    PrĂ©cision: La barre des tĂąches est celle que vous connaissez depuis les versions prĂ©cĂ©dentes de Windows oĂč s’accumulent les icĂŽnes d’applications ouvertes sur le bureau, les zones de lancement rapide et de notifications,  Clignement d'Ɠil. Barre des tĂąches qui, Ă©galement, n’est pas figĂ©e puisque vous pouvez la dĂ©placer, Ă  l’aide de la souris en haut, Ă  droite ou Ă  gauche de l’écran Clignement d'Ɠil.
  3. Depuis l’écran d’accueil, repĂ©rez la tuile, ici, Nettoyage de disque puis, Ă  l’aide deCrĂ©erGroupe la souris, faites la glisser entre 2 groupes de vignettes afin de faire apparaitre le nouveau groupe, matĂ©rialisĂ© par une barre verticale transparente. LĂącher la vignette; elle est maintenant dans le nouveau groupe


     

     

  4. Nous allons nommer ce groupe afin qu’il soit mieux identifiable. Cliquez au-dessus de la premiĂšre vignette puis,NommerGroupe sĂ©lectionnez Nommer les groupes.
  5. Saisissez le nom désiré puis cliquez en dehors de la zone de texte pour quitter le mode modification.
  6. Nous allons Ă©pingler Ă  l’écran d’accueil uneGlisserTuile deuxiĂšme vignette. Pour cela, nous procĂšderons comme en 2.
  7. A l’aide de la souris, dĂ©plaçons maintenant la nouvelle vignette vers ceDeplacerTuile groupe


Et voilĂ , ce n’est pas plus difficile que cela. Il est finalement plus long de l’expliquer que de rĂ©aliser cette personnalisation Clignement d'Ɠil

Pour ajouter d’autres vignettes au groupe, il suffit alors de reprendre les points 2, 6 et 7.

Bonne continuation avec Windows 8 Clignement d'Ɠil.
Patrice.

Removal instructions for DealPly

What is DealPly?

The Malwarebytes research team has determined that DealPly is a browser hijacker. These so-called “hijackers” manipulate your browser(s), for example to change your startpage or searchscopes, so that the affected browser visits their site or one of their choice. This one also displays advertisements.

https://forums.malwarebytes.org/index.php?%2Ftopic%2F162390-removal-instructions-for-dealply%2F

Removal instructions for HD+v3

What is HD+v3?

The Malwarebytes research team has determined that HD+v3 is a browser hijacker. These so-called “hijackers” manipulate your browser(s), for example to change your startpage or searchscopes, so that the affected browser visits their site or one of their choice. This one also displays advertisements.

https://forums.malwarebytes.org/index.php?%2Ftopic%2F162380-removal-instructions-for-hdv3%2F

Selecting AD properties

Saw a question on the forums about selecting name properties using the Microsoft AD cmdlets.  By default Get-AdUser returns a limited subset of properties:

ÂŁ> Get-ADUser -identity richard


DistinguishedName : CN=Richard,CN=Users,DC=Manticore,DC=org
Enabled           : True
GivenName         :
Name              : Richard
ObjectClass       : user
ObjectGUID        : 7c42be70-c6b2-401f-8296-46de9ee7446c
SamAccountName    : Richard
SID               : S-1-5-21-195014076-723736408-1406369008-1104
Surname           :
UserPrincipalName : Richard@Manticore.org

 

Given name = first name

 

if you want other properties you have to explicitly aske for them using the –Properties parameter. You can use a wildcard * but if you have a big AD that could be a lot of unrequired data you are pulling back. On the other hand if you want a lot of properties its often simpler to use the wildcard. As with most PowerShell related things there is no answer that is right all of the time.

 

The user asking the question wanted the first name, last name and department for all users in a given OU.  Use the OU as the –SearchBase.  The property you need to explicitly ask for is Department:

ÂŁ> Get-ADUser -Filter *  -SearchBase ‘OU=Testing,DC=Manticore,DC=org’ -Properties Department | select GivenName, SurName, Department | fl *


GivenName  : Dave
SurName    : Green
Department : Testing

 

Selecting AD properties can be a little bit awkward if you forget that the default set is limited.  If in doubt of a property name – display them all for one user:

Get-ADUser -identity richard -Properties *

Reusing Validation Messages in AngularJS

One of the many new features in AngularJS 1.3 is the ability to reuse validation messages.

When displaying validation messages, you may find that you often reuse very similar messages:

“Class name must be entered.”  “Start date must be entered.”  “End date must be entered.”

Wouldn’t it be nice if you could reuse error messages instead of repeating them throughout the application? Angular 1.3 provides an ngMessagesInclude directive as part of the new Angular ngMessages module that allows you to share error messages throughout an application.

This post shows you how to use this new feature.

For more information about the new features in AngularJS 1.3, check out my latest Pluralsight course, authored with Joe Eames:

What’s New in Angular 1.3

screenshot

Reusing validation messages in Angular requires the following steps:

  1. Create an HTML file for the common messages.
  2. Include the HTML file in the same element as ngMessages.
  3. Override any messages as required.

Let’s take it one step at a time.

NOTE: If you are new to using ngMessages, check out the Angular 1.3 course.

Create the Messages File

The first step is to create the HTML template file for the common message text. In this file, add HTML with an ng-message attribute for each message. The value of the ng-message attribute must be a valid $error object key. That key is often the name of the validation type, for example: required, minlength, or maxlength.

The message text itself should be generic, meaning it should not refer to specific field names or field requirements.

The resulting HTML file could look something like this:

<span ng-message=”required”>
This item cannot be blank.</span>
<span ng-message=”minlength”>
You have not met this item’s minimum length.</span>
<span ng-message=”maxlength”>
You have exceeded this item’s maximum length.</span>

Include the HTML File

The next step is to include the messages HTML file for each input element that wants to reuse the messages using ng-messages-include. Insert this directive in the same element containing the ng-messages directive.

The following shows an Email field with a label, textbox, and validation. The entire form-group is shown below to provide context for the validation messages.

<div class=”form-group”
     ng-class=”{‘has-error':classForm.inputInstructorEmail.$invalid &&
                            classForm.inputInstructorEmail.$touched}”>
    <label class=”col-md-2 control-label”
           for=”inputInstructorEmail”>Instructor’s Email</label>

    <div class=”col-md-4″>
        <input class=”form-control”
               type=”email”
               id=”inputInstructorEmail”
               name=”inputInstructorEmail”
               placeholder=”instructor’s email”
               ng-model=”vm.class.instructorEmail”
               required
               minlength=”6″ />
    </div>
    <span class=”help-block has-error”
          ng-if=”classForm.inputInstructorEmail.$touched”
          ng-messages=”classForm.inputInstructorEmail.$error”
          ng-messages-include=”app/errorMessages.html” >
        <span ng-message=”email”>
            Instructor’s email must be a valid email address.
        </span>
    </span>
</div>

Notice that the only ng-message directive included in the code above is for an invalid email address. This one is required here because it was not included in the messages html file.

Override Messages as Required

There may be times when you want a customized message. In those cases, you can easily override a message by simply adding a child element with an ng-message directive. The child element ng-message will always override any message defined for the same key in the included messages file.

    <span class=”help-block has-error”
          ng-if=”classForm.inputInstructorEmail.$touched”
          ng-messages=”classForm.inputInstructorEmail.$error”
          ng-messages-include=”app/errorMessages.html” >
        <span ng-message=”email”>
            Instructor’s email must be a valid email address.
        </span>
        <span ng-message=”minlength”>
            Instructor’s email must be at least 6 characters in length.
        </span>

    </span>

Use this technique any time you want to reuse messages throughout your application.

Enjoy!

Spybot Search & Destroy Weekly Update – December 17, 2014

2014-12-17
Adware
+ BetterSurf + Firseria + InstallMonetizer
Malware
++ Fraud.VaccineScan
PUPS
+ OutBrowse
Spyware
+ AdRotator
Trojan
+ Win32.Bifrost ++ Win32.Siscos
Total: 2602326 fingerprints in 813132 rules for 7381 products.

http://www.safer-networking.org/about/updates/

Paperback Version of Learn to Code in Swift Now Available!

The paperback version of my latest book, Learn to Code in Swift, is now available on Amazon!

Learn to Code in Swift on Amazon

All the best!
Kevin McNeish
Author: iOS App Development for Non-Programmers book series
Twitter: @kjmcneish

Swift Programming 101: The Power of Extensions



Step-by-Step tutorial shows you how to create useful extensions that speed your app development.

Swift Programming 101: The Power of Extensions

All the best!
Kevin McNeish
Author: iOS App Development for Non-Programmers book series
Twitter: @kjmcneish

AVC Plus Removal Guide

AVC Plus is a rogue anti-spyware programs from the Rogue.FakeRean-Braviax family of computer infections. This infection is considered a rogue anti-spyware program because it purposely displays fake scan results, false security warnings, hijacks your web browser, and does not allow you to run your legitimate Windows applications. This scareware is promoted through web sites that have been hacked with scripts that try to install the software by exploiting vulnerabilities on your computer. It is also promoted through Trojans that pretend to be legitimate programs that are required to view an online video, but instead install the infection.

http://www.bleepingcomputer.com/virus-removal/remove-avc-plus

Microsoft Security Updates – DECEMBER 2014

Critical Security updates to Microsoft Windows, Internet Explorer,  Office and other products became available on Patch Tuesday.  A patch for the Exchange server based product is also available.  This is a large security update and users should promptly update to enjoy best levels of protection. So far, no issues encountered in early use after installation at home & work.

https://isc.sans.edu/forums/diary/Microsoft+Patch+Tuesday+-+December+2014/19043

http://technet.microsoft.com/en-us/security/bulletin/ms14-dec 

Recent Comments

Archives

ï»ż