• Lenovo Mac OS X Battery Fix

    Here is a nifty little script that I wrote a while ago that when applied to your custom extracted DSDT on the Lenovo L420, it will enable the battery percentage, not much required!

  • Samsung Galaxy S10 Nasty Surprise

    There are many reasons why everyone is excited about Samsung’s 10th-anniversary Galaxy S10. Most notably the leaked triple rear cameras, ’ultrasonic’ in-display reader, new gradient color schemes and 5G option.

  • Start using Flutter!

    Build beautiful native apps in record time Flutter is Google’s mobile app SDK for crafting high-quality native interfaces on iOS and Android in record time.

  • Android App Bundles

    What the hell is an App bundle anyway? There were a ton of exciting things announced at I/O this year — one of the things that caught my eyes the most was the new app bundle format.

  • ASUS X550LDV Mac OS X Guide

    With the purpose of running the beloved Apple Mac OS X on our Intel ASUS laptop I am writing this guide to share my experience and knowledge about this Hackintosh.

Encryptor 64 - Powerful Cross Platform Text Encrpytor



A new Flutter application made with love by Josep Jesus Bigorra Algaba, myself, that brings you the best of base64 encryption mechanism along with a custom way of encrypting and decrypting that guarantees the safety of your message. 



This app was made using Flutter only and is currently only available for Android since I don't have an Apple Developer Account.. If a generous soul does, please e-mail me!!!




No one except the passkey holder can ever find out what you meant, use this responsibly and enjoy it. App currently has support for english, spanish and portuguese. 

 As a side note, please remember that the passkey has to be made up of 2 or more characters, numbers, symbols, or emojis :)

Share:

Swift 4 - The powerful easy to learn programming language

Swift is a general-purpose, multi-paradigm, compiled programming language developed by Apple Inc. for iOS, macOS, watchOS, tvOS, Linux and z/OS. Swift is designed to work with Apple's Cocoa and Cocoa Touch frameworks and the large body of existing Objective-C code written for Apple products. It is built with the open source LLVM compiler framework and has been included in Xcode since version 6. On Apple platforms it uses the Objective-C runtime library which allows C, Objective-C, C++ and Swift code to run within one program.



Apple intended Swift to support many core concepts associated with Objective-C, notably dynamic dispatch, widespread late binding, extensible programming and similar features, but in a "safer" way, making it easier to catch software bugs; Swift has features addressing some common programming errors like null pointer dereferencing and provides syntactic sugar to help avoid the pyramid of doom. Swift supports the concept of protocol extensibility, an extensibility system that can be applied to types, structs and classes, which Apple promotes as a real change in programming paradigms they term "protocol-oriented programming"(similar to traits).

Swift was introduced at Apple's 2014 Worldwide Developers Conference (WWDC).It underwent an upgrade to version 1.2 during 2014 and a more major upgrade to Swift 2 at WWDC 2015. Initially a proprietary language, version 2.2 was made open-source software under the Apache License 2.0 on December 3, 2015, for Apple's platforms and Linux.

Different major versions have been released annually with incompatible syntax and library invocations that require significant source code rewrites. For larger code bases this has caused many developers to dismiss Swift until a more stable version becomes available.

Swift is an alternative to the Objective-C language that employs modern programming-language theory concepts and strives to present a simpler syntax. During its introduction, it was described simply as "Objective-C without the C".
By default, Swift does not expose pointers and other unsafe accessors, in contrast to Objective-C, which uses pointers pervasively to refer to object instances. Also, Objective-C's use of a Smalltalk-like syntax for making method calls has been replaced with a dot-notation style and namespace system more familiar to programmers from other common object-oriented (OO) languages like Java or C#. Swift introduces true named parameters and retains key Objective-C concepts, including protocols, closures and categories, often replacing former syntax with cleaner versions and allowing these concepts to be applied to other language structures, like enumerated types (enums)

Syntactic sugar

Under the Cocoa and Cocoa Touch environments, many common classes were part of the Foundation Kit library. This included the NSString string library (using Unicode), the NSArray and NSDictionary collection classes, and others. Objective-C provided various bits of syntactic sugar to allow some of these objects to be created on-the-fly within the language, but once created, the objects were manipulated with object calls. For instance, in Objective-C concatenating two NSStrings required method calls similar to this:


NSString *str = @"hello,";
str = [str stringByAppendingString:@" world"];

In Swift, many of these basic types have been promoted to the language's core, and can be manipulated directly. For instance, strings are invisibly bridged to NSString (when Foundation is imported) and can now be concatenated with the + operator, allowing greatly simplified syntax; the prior example becoming:


var str = "hello,"
str += " world"

Swift supports five access control levels for symbols: open, public, internal, fileprivate, and private. Unlike many object-oriented languages, these access controls ignore inheritance hierarchies: private indicates that a symbol is accessible only in the immediate scope, fileprivate indicates it is accessible only from within the file, internal indicates it is accessible within the containing module, public indicates it is accessible from any module, and open (only for classes and their methods) indicates that the class may be subclassed outside of the module.


Comparisons to other languages


This section is in a list format that may be better presented using prose. You can help by converting this section to prose, if appropriate. Editing help is available. (February 2017)
Swift is similar to C in various ways:


  • Most C operators are used in Swift, but there are some new operators.
  • Curly braces are used to group statements.
  • Variables are assigned using an equals sign, but compared using two consecutive equals signs. A new identity operator, ===, is provided to check if two data elements refer to the same object.
  • Control statements while, if, and switch are similar, but have extended functions, e.g., a switch that takes non-integer cases, while and if supporting pattern matching and conditionally unwrapping optionals, etc.
  • Square brackets are used with arrays, both to declare them and to get a value at a given index in one of them.
  • It also has similarities to Objective-C:
  • Basic numeric types (Int, UInt, Float, Double)
  • Class methods are inherited, like instance methods; self in class methods is the class the method was called on.
  • Similar for...in enumeration syntax.
  • Differences from Objective-C include:
  • Statements do not need to end with semicolons (;), though these must be used to allow more than one statement on a line.
  • No header files.
  • Uses type inference.
  • Generic programming.
  • Functions are first-class objects.
  • Enumeration cases can have associated data (algebraic data types).
  • Operators can be redefined for classes (operator overloading), and new operators can be defined.
  • Strings fully support Unicode. Most Unicode characters can be used in either identifiers or operators.
  • No exception handling. Swift 2 introduces a different and incompatible error-handling model.
  • Several notoriously error-prone behaviors of earlier C-family languages have been changed:
  • Pointers are not exposed by default. There is no need for the programmer to keep track of and mark names for referencing or dereferencing.
  • Assignments return no value. This prevents the common error of writing i = 0 instead of i == 0 by throwing a compile-time error.
  • No need to use break statements in switch blocks. Individual cases do not fall through to the next case unless the fallthrough statement is used.
  • Variables and constants are always initialized and array bounds are always checked.
  • Integer overflows, which result in undefined behavior for signed integers in C, are trapped as a run-time error in Swift. Programmers can choose to allow overflows by using the special arithmetical operators &+, &-, &*, &/ and &%. The properties min and max are defined in Swift for all integer types and can be used to safely check for potential overflows, versus relying on constants defined for each type in external libraries.
  • The one-statement form of if and while, which allows for the omission of braces around the statement, is unsupported.
  • C-style enumeration for (int i = 0; i < c; i++), which is prone to off-by-one errors, is unsupported (from Swift 3 onward).
  • The pre- and post- increment and decrement operators (i++, --i ...) are unsupported (from Swift 3 onward), more so since C-style for statements are also unsupported from Swift 3 onward.




Development and other implementations

Since the language is open-source, there are prospects of it being ported to the web.Some web frameworks have already been developed, such as IBM's Kitura, Perfect and Vapor.

An official "Server APIs" work group has also been started by Apple,with members of the Swift developer community playing a central role.

A second free implementation of Swift that targets Cocoa, Microsoft's Common Language Infrastructure (.NET), and the Java and Android platform exists as part of the Elements Compiler from RemObjects Software.
Share:

Samsung's Galaxy S10 Has A Nasty Surprise

There are many reasons why everyone is excited about Samsung’s 10th-anniversary Galaxy S10. Most notably the leaked triple rear cameras, ’ultrasonic’ in-display reader, new gradient color schemes and 5G option. Even Samsung is bragging about the Galaxy S10. But now there is news which will come as a nasty surprise to many…

‘Great Secret Features’ and ‘Nasty Surprises’ are my regular columns investigating the best features / biggest problems hidden behind the headlines.


Leaked by Ice Universe, arguably the industry’s top Samsung insider right now, we learn the Galaxy S10 will no longer try to compete with the iPhone’s popular Face ID system. In fact, Samsung looks to be giving up on facial recognition completely.


“The S10 cancels the iris sensor,” states Ice Universe. Why? Because Samsung believes “the ultrasonic fingerprint [sensor] is enough to replace it.”

Justifying this move, Ice Universe explains that the ultrasonic fingerprint sensor on the Galaxy S10 is unlike any in-display fingerprint reader we have seen before. It is both “faster and has a larger recognition area” with up to 30% of the screen responding to a user’s fingerprint.

This is indeed significant. Since in-display readers have no physical edges they cannot be opened with a combination of feeling and muscle memory. But being able to just touch anywhere on the bottom third of the Galaxy S10 display to unlock the phone would change that.

Still, this doesn’t fully replace an iris scanner.


Much like Apple’s decision to scrap Touch ID on the iPhone and iPad ranges, which leaves users with times when fingerprint unlocking would be more convenient (for example, peaking at your phone in a meeting or when wearing sunglasses), scrapping the Galaxy S10’s iris recognition causes problems (such as when wearing gloves).

Moreover, Samsung’s decision to support both technologies was a distinct selling point for Galaxy phones over iPhones. And with reports previously suggesting Samsung was on the verge of a technological breakthrough which would’ve seen it match the quality of Face ID, it is a shame to see the company give owners less choice.

So why is Samsung doing it?

The decision is believed to be based on the company’s desire to give the Galaxy S10 a virtually bezel-less display. Chinese manufacturers like Oppo, Vivo, Xiaomi and Lenovo have all achieved this through various design innovations. And with Samsung’s latest financial results showing it losing out to Chinese rivals, in particular, the company needs to compete head-on.

This is not the Galaxy S10’s only compromise either.

Samsung is also widely expected to remove the headphone jack from the Galaxy S10 to accommodate all its technological innovations. Most rivals have already done this, but Samsung has long been praised for its stubbornness and even used this as a marketing point.

So yes, the Galaxy S10 does look like arguably the most radical upgrade in Samsung’s smartphone history. But this 10th-anniversary flagship will also come with some controversial compromises as part of the deal… 
Share:

Microsoft finally open-sources MS-DOS!!!


After over 30 years, Microsoft is making MS-DOS fully open source as part of a “re-release” without the restrictions of the last.

Many will not have seen MS-DOS for decades, but the 1983 OS remains among the most important software ever written.

Indicating the importance of the OS, MS-DOS was added to the Computer History Museum in 2013. In doing so, the original source codes were transferred.

The clause of MS-DOS in the Computer History Museum was that people were prohibited from using it for commercial projects and distributing it elsewhere. Not really open source, then.

Microsoft is now publishing the source code under the MIT license which allows it to be modified, used, and distributed without penalty.

The company provided some interesting facts alongside its release:
  • All the source for MS-DOS 1.25 and 2.0 was written in 8086 assembly code
  • The source code for the initial release of 86-DOS dates from around December 29th 1980
  • The MS-DOS 1.25 code dates from around May 9th 1983, and is comprised of just 7 source files, including the original MS-DOS Command-Line shell - COMMAND.ASM!
  • MS-DOS 2.0 dates from around August 3rd 1983, and grew considerably in sophistication (and team size), and is comprised of 100 .ASM files
  • There are some interesting documentation (.TXT, .DOC) files interspersed with the source and object files - many are well worth a read, as are many of the source code comments!

As expected, the code is being hosted on GitHub which Microsoft acquired back in June for $7.5 billion. It’s worth noting the company will not accept pull requests and will treat it as a static copy.
Share:

Popular Posts

Labels

Followers

Recent Posts

Back to Top