text:
package ch.bfh.ti.ictm.iam.stiam.aa.util;

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.UnrecoverableEntryException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import java.util.Properties;
import org.opensaml.xml.security.credential.Credential;
import org.opensaml.xml.security.x509.BasicX509Credential;
import org.slf4j.Logger;
import static org.slf4j.LoggerFactory.getLogger;

/**
 * Configuration-object for the main configuration of the AA. Configuration is
 * initialized by reading a properties file whose location defaults to user.home
 * + DEFAULT_CONFIG_DIR + DEFAULT_CONFIG_FILEPATH (normally
 * ~/.stiam-aa/aa.properties).
 *
 * The location of the configuration-file can be overridden with the system
 * property "stiam.config".
 *
 * If no configuration can be loaded, default values will be used which most
 * probably will not lead to useful results...
 *
 * This class is a singleton.
 *
 * @author Pascal Mainini
 * @author Marc Kunz
 */
public class StiamConfiguration {
//////////////////////////////////////// Fields

    /**
     * enum used for specifying the binding offered by the AA.
     */
    public enum Binding {
        HTTP_POST, SOAP
    };

    // Main configuration
    /**
     * Default path-fragment with the directory-name of the directory containing
     * all configuration of STIAM-AA
     */
    protected static final String DEFAULT_CONFIG_DIR = ".stiam-aa";

    // File paths of other configuration files
    /**
     * This and all subsequent, following DEFAULT_*-constants hold default
     * values for their respective configuration options. They are applied if no
     * value for the specific property can be found in the main configuration
     * file.
     */
    protected static final String DEFAULT_CONFIG_FILEPATH = DEFAULT_CONFIG_DIR + "/aa.properties";
    protected static final String DEFAULT_ATTRIBUTENAMEMAPPER_FILEPATH = DEFAULT_CONFIG_DIR + "/attributename-mapper.properties";
    protected static final String DEFAULT_ELIGIBILITYCHECKER_FILEPATH = DEFAULT_CONFIG_DIR + "/eligibility-checker.properties";
    protected static final String DEFAULT_QUERYSENDER_FILEPATH = DEFAULT_CONFIG_DIR + "/query-sender.properties";
    protected static final String DEFAULT_PROPERTYDIRECTORY_FILEPATH = DEFAULT_CONFIG_DIR + "/property-directory.properties";
    protected static final String DEFAULT_TESTCONFIGURATION_FILEPATH = DEFAULT_CONFIG_DIR + "/aa-test.properties";
    protected static final String DEFAULT_KEYSTORE_FILEPATH = DEFAULT_CONFIG_DIR + "/aa.jks";

    // SAML default settings
    protected static final String DEFAULT_SAML_ISSUER = "https://aa.example.org";
    protected static final String DEFAULT_SAML_DESTINATION = "http://localhost:8080/";
    protected static final String DEFAULT_SAML_ASSERTIONVALIDITYMINUTES = "10";
    protected static final String DEFAULT_SAML_NAMEID = "johndoe";
    protected static final String DEFAULT_SAML_NAMEIDFORMAT = "urn:oasis:names:tc:SAML:2.0:nameid-format:unspecified";
    protected static final String DEFAULT_SAML_ASSURANCELEVEL = "http://assurance.example.org/level1";
    protected static final String DEFAULT_SAML_SUBJECTCONFIRMATIONMETHOD = "urn:oasis:names:tc:SAML:2.0:cm:bearer";
    protected static final String DEFAULT_SAML_RETURN_POST_BINDING = "true";

    // LDAP default settings
    protected static final String DEFAULT_LDAP_HOST = "localhost";
    protected static final String DEFAULT_LDAP_PORT = "389";
    protected static final String DEFAULT_LDAP_USER = "cn=manager";
    protected static final String DEFAULT_LDAP_PASSPHARSE = "";
    protected static final String DEFAULT_LDAP_BASEDN = "";
    protected static final String DEFAULT_LDAP_FILTER = "(uid=%s)";

    // Attribute-Service configuration
    protected static final String DEFAULT_BINDING = "soap";  // alternative: http_post
    protected static final String DEFAULT_ATTRIBUTEQUERY_ENCODING = "UTF-8";
    protected static final String DEFAULT_VERIFY_QUERY_SIGNATURE = "true";
    protected static final String DEFAULT_VERIFY_AUTHN_STATEMENT = "true";
    protected static final String DEFAULT_VERIFY_AUTHN_SIGNATURE = "true";
    protected static final String DEFAULT_VERIFY_AUTHN_TIMESPAN = "true";

    // Keystore configuration
    protected static final String DEFAULT_KEYSTORE_PASSWORD = "secret";
    protected static final String DEFAULT_KEYSTORE_ENTRY_NAME = "stiam-aa";
    protected static final String DEFAULT_KEYSTORE_ENTRY_PASSWORD = "secret";

    // Other default settings
    protected static final String DEFAULT_ELEGIBILITY_POLICY = "deny";
    protected static final String DEFAULT_DIRECTORY = "property";

    // Instance variables
    private static final Logger logger = getLogger(StiamConfiguration.class);
    private static final StiamConfiguration instance = new StiamConfiguration();
    private static Properties stiamSettings;
    private static String userHome;

//////////////////////////////////////// Constructors
    /**
     * Try to load the configuration. See description of this class for more
     * information about how the configuration is loaded.
     */
    private StiamConfiguration() {
        Properties systemProperties = System.getProperties();
        userHome = systemProperties.getProperty("user.home");
        if (systemProperties.getProperty("stiam.config") != null
                && !systemProperties.getProperty("stiam.config").isEmpty()) {
            logger.info("Trying to read configuration specified by system property: {}", systemProperties.getProperty("stiam.config"));
            loadConfig(systemProperties.getProperty("stiam.config"));
        } else {
            logger.info("Trying to read configuration file from default location");
            loadConfig(userHome + "/" + DEFAULT_CONFIG_FILEPATH);
        }

        if (stiamSettings == null) {
            logger.warn("Configuration could not be loaded, running with default values. That will probably lead to strange results...");
        }
    }

//////////////////////////////////////// Public Methods
    /**
     * @return The one and only instance of this class. (Singleton)
     */
    public static StiamConfiguration getInstance() {
        return instance;
    }

//////////////////// Filepath-Methods
    /**
     * Defines the path to the properties-file with the configuration for the
     * AttributeNameMapper
     *
     * Can be configured with property "AttributeNameMapper.FilePath", defaults
     * to DEFAULT_ATTRIBUTENAMEMAPPER_FILEPATH
     *
     * @return Path to the properties-file
     */
    public String getAttributeNameMapperFilePath() {
        return stiamSettings.getProperty("AttributeNameMapper.FilePath", userHome + "/" + DEFAULT_ATTRIBUTENAMEMAPPER_FILEPATH);
    }

    /**
     * Defines the path to the properties-file with the configuration for the
     * EligibilityChecker
     *
     * Can be configured with property "EligibilityChecker.FilePath", defaults
     * to DEFAULT_ELIGIBILITYCHECKER_FILEPATH
     *
     * @return Path to the properties-file
     */
    public String getEligibilityCheckerFilePath() {
        return stiamSettings.getProperty("EligibilityChecker.FilePath", userHome + "/" + DEFAULT_ELIGIBILITYCHECKER_FILEPATH);
    }

    /**
     * Defines the path to the properties-file with the configuration for the
     * QuerySender
     *
     * Can be configured with property "QuerySender.FilePath", defaults to
     * DEFAULT_QUERYSENDER_FILEPATH
     *
     * @return Path to the properties-file
     */
    public String getQuerySenderFilePath() {
        return stiamSettings.getProperty("QuerySender.FilePath", userHome + "/" + DEFAULT_QUERYSENDER_FILEPATH);
    }

    /**
     * Defines the path to the properties-file with the configuration for the
     * PropertyDirectory
     *
     * Can be configured with property "PropertyDirectory.FilePath", defaults to
     * DEFAULT_PROPERTYDIRECTORY_FILEPATH
     *
     * @return Path to the properties-file
     */
    public String getPropertyDirectoryFilePath() {
        return stiamSettings.getProperty("PropertyDirectory.FilePath", userHome + "/" + DEFAULT_PROPERTYDIRECTORY_FILEPATH);
    }

    /**
     * Defines the path to the properties-file with the configuration for the
     * unit-tests
     *
     * Can be configured with property "TestConfiguration.FilePath", defaults to
     * DEFAULT_TESTCONFIGURATION_FILEPATH
     *
     * @return Path to the properties-file
     */
    public String getTestConfigurationFilePath() {
        return stiamSettings.getProperty("TestConfiguration.FilePath", userHome + "/" + DEFAULT_TESTCONFIGURATION_FILEPATH);
    }

    /**
     * Defines the path to the keystore-file containing the credentials used for
     * signing and verifying.
     *
     * Can be configured with property "Keystore.FilePath", defaults to
     * DEFAULT_KEYSTORE_FILEPATH
     *
     * @return Path to keystore-file
     */
    public String getKeystoreFilePath() {
        return stiamSettings.getProperty("Keystore.FilePath", userHome + "/" + DEFAULT_KEYSTORE_FILEPATH);
    }

//////////////////// SAML-Methods
    /**
     * Defines the Issuer used when generating SAML-messages.
     *
     * Can be configured with property "SAML.Issuer", defaults to
     * DEFAULT_SAML_ISSUER
     *
     * @return Issuer used in SAML-messages
     */
    public String getSAMLIssuer() {
        return stiamSettings.getProperty("SAML.Issuer", DEFAULT_SAML_ISSUER);
    }

    /**
     * Defines the Destination used when generating SAML-messages.
     *
     * Can be configured with property "SAML.Destination", defaults to
     * DEFAULT_SAML_DESTINATION
     *
     * @return Destination used in SAML-messages
     */
    public String getSAMLDestination() {
        return stiamSettings.getProperty("SAML.Destination", DEFAULT_SAML_DESTINATION);
    }

    /**
     * Defines the validity period in minutes of generated SAML-messages.
     *
     * Can be configured with property "SAML.AssertionValidityMinutes", defaults
     * to DEFAULT_SAML_ASSERTIONVALIDITYMINUTES
     *
     * @return Validity in minutes used in SAML-messages
     */
    public int getSAMLAssertionValidityMinutes() {
        return Integer.parseInt(stiamSettings.getProperty("SAML.AssertionValidityMinutes", DEFAULT_SAML_ASSERTIONVALIDITYMINUTES));
    }

    /**
     * Defines the NameID used when generating SAML-messages.
     *
     * Can be configured with property "SAML.NameID", defaults to
     * DEFAULT_SAML_NAMEID
     *
     * @return NameID used in SAML-messages
     */
    public String getSAMLNameID() {
        return stiamSettings.getProperty("SAML.NameID", DEFAULT_SAML_NAMEID);
    }

    /**
     * Defines the NameID-format used when generating SAML-messages.
     *
     * Can be configured with property "SAML.NameIDFormat", defaults to
     * DEFAULT_SAML_NAMEIDFORMAT
     *
     * @return NameID-format used in SAML-messages
     */
    public String getSAMLNameIDFormat() {
        return stiamSettings.getProperty("SAML.NameIDFormat", DEFAULT_SAML_NAMEIDFORMAT);
    }

    /**
     * Defines the assurance-level used when generating SAML-messages.
     *
     * Can be configured with property "SAML.AssuranceLevel", defaults to
     * DEFAULT_SAML_ASSURANCELEVEL
     *
     * @return Assurance-level used in SAML-messages
     */
    public String getSAMLAssuranceLevel() {
        return stiamSettings.getProperty("SAML.AssuranceLevel", DEFAULT_SAML_ASSURANCELEVEL);
    }

    /**
     * Defines the subject-confirmation-method used when generating
     * SAML-messages.
     *
     * Can be configured with property "SAML.SubjectConfirmationMethod",
     * defaults to DEFAULT_SAML_SUBJECTCONFIRMATIONMETHOD
     *
     * @return Confirmation-method of the subject used in SAML-messages
     */
    public String getSAMLSubjectConfirmationMethod() {
        return stiamSettings.getProperty("SAML.SubjectConfirmationMethod", DEFAULT_SAML_SUBJECTCONFIRMATIONMETHOD);
    }

//////////////////// LDAP-Methods
    /**
     * Defines which host is used to access the LDAP directory.
     *
     * Can be configured with property "LdapClient.Host", defaults to
     * DEFAULT_LDAP_HOST.
     *
     * @return Host of the LDAP directory.
     */
    public String getLdapHost() {
        return stiamSettings.getProperty("LdapClient.Host", DEFAULT_LDAP_HOST);
    }

    /**
     * Defines which port is used to access the LDAP directory.
     *
     * Can be configured with property "LdapClient.Port", defaults to
     * DEFAULT_LDAP_HOST.
     *
     * @return Port of the LDAP directory.
     */
    public int getLdapPort() {
        return Integer.parseInt(stiamSettings.getProperty("LdapClient.Port", DEFAULT_LDAP_PORT));
    }

    /**
     * Defines the user accessing the LDAP directory.
     *
     * Can be configured with property "LdapClient.User", defaults to
     * DEFAULT_LDAP_USER.
     *
     * @return User accessing the LDAP directory.
     */
    public String getLdapUser() {
        return stiamSettings.getProperty("LdapClient.User", DEFAULT_LDAP_USER);
    }

    /**
     * Defines the passphrase of the user accessing the LDAP directory.
     *
     * Can be configured with property "LdapClient.Passphrase", defaults to
     * DEFAULT_LDAP_PASSPHARSE.
     *
     * @return Passphrase of the LDAP user.
     */
    public String getLdapPassphrase() {
        return stiamSettings.getProperty("LdapClient.Passphrase", DEFAULT_LDAP_PASSPHARSE);
    }

    /**
     * Defines the BaseDN used by the LDAP-Client.
     *
     * Can be configured with property "LdapClient.BaseDN", defaults to
     * DEFAULT_LDAP_BASEDN.
     *
     * @return BaseDN used by the LDAP-Client.
     */
    public String getLdapBaseDN() {
        return stiamSettings.getProperty("LdapClient.BaseDN", DEFAULT_LDAP_BASEDN);
    }

    /**
     * Defines the search filter used by the LDAP-Client.
     *
     * Can be configured with property "LdapClient.Filter", defaults to
     * DEFAULT_LDAP_FILTER.
     *
     * @param nameId The nameId is used to create the filter.
     * @return Filter used by the LDAP-Client.
     */
    public String getLdapFilter(String nameId) {
        return String.format(stiamSettings.getProperty("LdapClient.Filter", DEFAULT_LDAP_FILTER), nameId);
    }

//////////////////// Attribute-Service configuration
    /**
     * Defines the SAML-binding the AA can handle.
     *
     * Can be configured with property "AttributeService.Binding", defaults to
     * DEFAULT_BINDING.
     *
     * @return Binding to be used
     */
    public Binding getBinding() {
        if (stiamSettings.getProperty("AttributeService.Binding", DEFAULT_BINDING).equalsIgnoreCase(DEFAULT_BINDING)) {
            return Binding.SOAP;
        } else {
            return Binding.HTTP_POST;
        }
    }

    /**
     * Defines which encoding is used in the SAML-messages
     *
     * Can be configured with property
     * "AttributeService.AttributeQueryEncoding", defaults to
     * DEFAULT_ATTRIBUTEQUERY_ENCODING.
     *
     * @return Encoding to use
     */
    public String getAttributeQueryEncoding() {
        return stiamSettings.getProperty("AttributeService.AttributeQueryEncoding", DEFAULT_ATTRIBUTEQUERY_ENCODING);
    }

    /**
     * Enables/disables verification of the signature of the attribute-query.
     *
     * Can be configured with property "AttributeService.VerifyQuerySignature",
     * defaults to DEFAULT_VERIFY_QUERY_SIGNATURE.
     *
     * @return if true, signature of the attribute-query is verified.
     */
    public boolean verifyQuerySignature() {
        return Boolean.parseBoolean(stiamSettings.getProperty("AttributeService.VerifyQuerySignature", DEFAULT_VERIFY_QUERY_SIGNATURE));
    }

    /**
     * Defines if the AA tries to verify an authentication statement included in
     * the extensions.
     *
     * Can be configured with property "AttributeService.VerifyAuthnStatement",
     * defaults to DEFAULT_VERIFY_AUTHN_STATEMENT.
     *
     * @return if true, Authn-statement is verified.
     */
    public boolean verifyAuthnStatement() {
        return Boolean.parseBoolean(stiamSettings.getProperty("AttributeService.VerifyAuthnStatement", DEFAULT_VERIFY_AUTHN_STATEMENT));
    }

    /**
     * Enables/disables verification of the signature of the
     * authentication-statment. Note: signature gets only verified if
     * VerifyAuthnStatement is true.
     *
     * Can be configured with property "AttributeService.VerifyAuthnSignature",
     * defaults to DEFAULT_VERIFY_AUTHN_SIGNATURE.
     *
     * @return if true, signature of the authentication-statment is verified.
     */
    public boolean verifyAuthnSignature() {
        return Boolean.parseBoolean(stiamSettings.getProperty("AttributeService.VerifyAuthnSignature", DEFAULT_VERIFY_AUTHN_SIGNATURE));
    }

    /**
     * Enables/disables verification of conditions-timespan ("NotBefore" and
     * "NotOnOrAfter") of the authentication-statement. Note: timespan gets only
     * verified if VerifyAuthnStatement is true.
     *
     * Can be configured with property "AttributeService.VerifyAuthnTimespan",
     * defaults to DEFAULT_VERIFY_AUTHN_TIMESPAN.
     *
     * @return if true, signature of the authentication-statment is verified.
     */
    public boolean verifyAuthnTimespan() {
        return Boolean.parseBoolean(stiamSettings.getProperty("AttributeService.VerifyAuthnTimespan", DEFAULT_VERIFY_AUTHN_TIMESPAN));
    }

//////////////////// Credential configuration
    /**
     * Returns the password used for locking the keystore-file.
     *
     * Can be configured with property "Keystore.Password", defaults to
     * DEFAULT_KEYSTORE_PASSWORD.
     *
     * @return Password for the keystore-file
     */
    public String getKeystorePassword() {
        return stiamSettings.getProperty("Keystore.Password", DEFAULT_KEYSTORE_PASSWORD);
    }

    /**
     * Returns the name of the entry in the keystore used for credentials.
     *
     * Can be configured with property "Keystore.EntryName", defaults to
     * DEFAULT_KEYSTORE_ENTRY_NAME.
     *
     * @return Password for the entry in the keystore
     */
    public String getKeystoreEntryName() {
        return stiamSettings.getProperty("Keystore.EntryName", DEFAULT_KEYSTORE_ENTRY_NAME);
    }

    /**
     * Returns the password used for locking the entry in the keystore.
     *
     * Can be configured with property "Keystore.EntryPassword", defaults to
     * DEFAULT_KEYSTORE_ENTRY_PASSWORD.
     *
     * @return Password for the entry in the keystore
     */
    public String getKeystoreEntryPassword() {
        return stiamSettings.getProperty("Keystore.EntryPassword", DEFAULT_KEYSTORE_ENTRY_PASSWORD);
    }

    /**
     * Initializes a Credential by loading a certificate from the keystore.
     *
     * @param alias The name of the entry in the keystore to load
     * @return The initialized Credential object
     * @throws IOException
     * @throws KeyStoreException
     * @throws NoSuchAlgorithmException
     * @throws CertificateException
     * @throws UnrecoverableEntryException
     */
    public Credential getCredential(String alias) throws IOException,
            KeyStoreException, NoSuchAlgorithmException, CertificateException,
            UnrecoverableEntryException {

        KeyStore ks = getKeystore();

        KeyStore.PrivateKeyEntry pkEntry = (KeyStore.PrivateKeyEntry) ks
                .getEntry(alias, new KeyStore.PasswordProtection(
                                getKeystoreEntryPassword().toCharArray()));

        X509Certificate certificate = (X509Certificate) pkEntry
                .getCertificate();
        BasicX509Credential credential = new BasicX509Credential();
        credential.setEntityCertificate(certificate);
        credential.setPublicKey(certificate.getPublicKey());
        credential.setPrivateKey(pkEntry.getPrivateKey());
        return credential;
    }

    /**
     * Returns the certificate to verify the signature of the issuer.
     *
     * @param alias the name of the certificate stored in the keystore. It
     * should be the same name like the issuers name.
     * @return
     * @throws KeyStoreException
     * @throws FileNotFoundException
     * @throws IOException
     * @throws NoSuchAlgorithmException
     * @throws CertificateException
     */
    public Credential getCertificate(String alias) throws KeyStoreException,
            FileNotFoundException, IOException, NoSuchAlgorithmException,
            CertificateException {

        KeyStore ks = getKeystore();

        BasicX509Credential credential = new BasicX509Credential();
        credential.setEntityCertificate((X509Certificate) ks
                .getCertificate(alias));

        return credential;
    }

    /**
     * Initializes the Credential used for signing extended attribute requests.
     * Currently, this is hardcoded and the same as the verification credential.
     *
     * @return The initialized Credential object which can be used for signing
     * @throws IOException
     * @throws KeyStoreException
     * @throws NoSuchAlgorithmException
     * @throws CertificateException
     * @throws UnrecoverableEntryException
     */
    public Credential getSignatureCredential() throws IOException,
            KeyStoreException, NoSuchAlgorithmException, CertificateException,
            UnrecoverableEntryException {
        return getCredential(getKeystoreEntryName());
    }

    /**
     * Initializes the Credential used for verifying all signatures. Currently,
     * this is hardcoded and the same as the signature credential.
     *
     * @return The initialized Credential object which can be used for signing
     * @throws IOException
     * @throws KeyStoreException
     * @throws NoSuchAlgorithmException
     * @throws CertificateException
     * @throws UnrecoverableEntryException
     */
    public Credential getVerificationCredential(String alias)
            throws IOException, KeyStoreException, NoSuchAlgorithmException,
            CertificateException, UnrecoverableEntryException {
        return getCertificate(alias);
    }

//////////////////// Various
    /**
     * Defines the default eligibility policy of the users stored in the
     * directory.
     *
     * Can be configured with property "EligibilityChecker.DefaultPolicy",
     * defaults to DEFAULT_ELEGIBILITY_POLICY.
     *
     * @return Default eligibility policy
     */
    public boolean getDefaultEligibilityPolicy() {
        return stiamSettings.getProperty("EligibilityChecker.DefaultPolicy", DEFAULT_ELEGIBILITY_POLICY).equalsIgnoreCase("accept");
    }

    /**
     * Defines which implementation of Directory is returned by the factory.
     *
     * Can be configured with property "AttributeService.Directory", defaults to
     * DEFAULT_DIRECTORY.
     *
     * @return Directory-type to use
     */
    public String getDirectory() {
        return stiamSettings.getProperty("AttributeService.Directory", DEFAULT_DIRECTORY);
    }

//////////////////////////////////////// Private Methods
    /**
     * Helper to load the keystore.
     *
     * @return Keystore which includes certificates, public key and private key.
     * @throws KeyStoreException
     * @throws FileNotFoundException
     * @throws IOException
     * @throws NoSuchAlgorithmException
     * @throws CertificateException
     */
    private KeyStore getKeystore() throws KeyStoreException,
            FileNotFoundException, IOException, NoSuchAlgorithmException,
            CertificateException {
        char[] pass = getKeystorePassword().toCharArray();

        KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
        try (FileInputStream fis = new FileInputStream(getKeystoreFilePath())) {
            ks.load(fis, pass);
        }

        return ks;
    }

    /**
     * Helper for loading a specified configuration-file.
     *
     * @param configFile the properties-file to load. Sets the instance-variable
     * stiamSettings if successful or resets it to null if not
     */
    private void loadConfig(String configFile) {
        try (BufferedInputStream stream = new BufferedInputStream(
                new FileInputStream(configFile))) {
            stiamSettings = new Properties();
            stiamSettings.load(stream);
            logger.info("Successfully loaded configuration from {}!",
                    configFile);
        } catch (IOException e) {
            stiamSettings = null;
        }
    }

}

redpajama_set_name: RedPajamaGithub


text:
Home Archive by category "Book news"
Category: Book news
Upcoming Books, Exhibitions, and Events for January 2022
Happy New Year! I know a lot of people are saying "wow – 2021 went by fast" and somedays I've felt that too. But on the other hand, at times it felt like it lasted a decade (especially one particular week in February for us here in Texas). Here's hoping for a good 2022 – I think we all deserve a break at this point!
A few things from last year were released in the new year here in the US, including both of the "Book of Days" books from Tudor Times:
And I originally had Phillipa Vincent Connolly's Disability and the Tudors: All the King's Fools out in the US in February, but it looks like both the hardcover and Kindle editions are available now in both the UK and US:
I also had mentioned Bosworth: The Archaeology of the Battlefield by Richard Mackinder as out back in November in the UK, but I think it might have been delayed (as soooo many things have been of late) and it is now due out at the end of January in the UK and on Kindle in the US. The US hardcover edition is due out at the end of February.
Finally, in new releases, an academic work (i.e. very expensive) titled The Tudor Sheriff: A Study in Early Modern Administration by Jonathan McGovern is due out on January 21 2022 in the UK and on March 1 in the US.
Peterborough Cathedral's annual Katharine of Aragon Festival for 2022 will be held on January 27-30 this year.
Continuing Exhibitions
The Getty Museum in Los Angeles, California is holding an exhibition titled Holbein: Capturing Character in the Renaissance that opened on October 19, 2021 and will run through January 9, 2022.
The British Library's new exhibition on Elizabeth I and Mary Queen of Scots opened on October 8 and will run through February 2022. You can book tickets at the website linked above.
Lara January 3, 2022 January 2, 2022 Book news, Entertainment, Tudor History news and events 0
No books and exhibitions round-up for December
It looks like I don't have much on my tracking sheet for December (and, as always, that probably means I'm missing stuff) so there wont be a round-up post this month.
I do want to mention the British Library TudorFest that I linked last month is on December 4th and there are some online events for those of us who can't be in London and that Faces of a Queen now has a closing date of December 2021. I wish I could have seen that exhibit in person! And check out the November post for a couple of other continuing exhibitions.
Lara December 1, 2021 November 28, 2021 Art News, Book news, Tudor History news and events 0
Upcoming Books, Exhibitions, and Events for November 2021
A number of new books are due out in November in the UK and hopefully the global supply-chain woes won't interfere with their releases!
First up is Tracy Borman's newest work Crown & Sceptre: A New History of the British Monarchy which is due out on November 18 in the UK and will be out in February in the US.
Next is Disability and the Tudors: All the King's Fools by Phillipa Vincent Connolly, which has already been delayed thanks to the pandemic so I hope it actually is finally released at the end of the month! It's also due out in February in the US.
And finally, Bosworth: The Archaeology of the Battlefield by Richard Mackinder is also due out at the end of the month and in February in the US.
And a few books that have already been released in the UK will be released in November in the US.
First up, King & Collector: Henry VIII and the Art of Kingship by Linda Collins and Siobhan Clarke will be out in the US on November 1.
And Amy Licence's Living Like a Tudor: Woodsmoke and Sage: A Sensory Journey Through Tudor England will be released in the US on November 2 with a slightly different title: Living Like a Tudor: Woodsmoke and Sage: A Sensory Journey Through Tudor England.
And Susan Doran's companion book to the British Library exhibition Elizabeth and Mary: Royal Cousins, Rival Queens will be out in paperback on November 15 in the US.
Only "new" this month because I missed it when I was writing last month's round-up!
The Getty Museum in Los Angeles, California is holding an exhibition titled Holbein: Capturing Character in the Renaissance that opened on October 19, 2021 and will run through January 9, 2022. It's always nice to be able to feature a Tudor-related exhibition over here in the US, even if this one is too far away for me to travel to see.
The British Library will also be hosting TudorFest on December 4 both online and at the British Library Theatre. Click here for the line-up and ticket details.
The Royal Museums Greenwich united the three versions of the Armada Portrait for the first time for the Faces of a Queen exhibition. I'm not sure of the end date on this one, but I'm guessing it will be on for a while since it was delayed for so long.
The Royal Shakespeare Company's production of the theatrical adaptation of The Mirror and the Light – the third book of Hilary Mantel's Wolf Hall Trilogy – opened at the Gielgud Theatre in London on September 23 and will run through January 23, 2022.
Lara November 1, 2021 October 31, 2021 Art News, Book news, Tudor History news and events 1
Upcoming Books, Exhibitions, and Events for October 2021
I have lots of stuff for November, but only one new book on my tracking sheet for this month – Susan Doran's Elizabeth and Mary: Royal Cousins, Rival Queens which is tied to the new British Library exhibition mentioned below. It's due out in the UK on October 8, the day the exhibition opens and will be out in early 2022 in the US.
The British Library's new exhibition on Elizabeth I and Mary Queen of Scots opens on October 8 and will run through February 2022. You can book tickets at the website linked above.
From the exhibition website:
Step back into a dangerous world of plots, espionage and treachery to explore the turbulent relationship between Elizabeth I and Mary, Queen of Scots in their own words.
In an England and Scotland engulfed in religious turmoil and with civil wars raging on the continent, this major exhibition follows the storm that threatened these two powerful women as they struggled for control of the British Isles.
They never met but their fates were intertwined. From their shared beginnings, facing the challenge of ruling in a man's world, feel the tension escalate as handwritten letters between the queens show how paranoia turned sisterly affection to suspicion.
With the threat of conspiracy ever present, communications written in code reveal how Elizabeth used a network of spies to trap and destroy her rival, bringing the dramatic story to a swift and bloody conclusion.
Encounter some of the Library's most exceptional 16th-century manuscripts and printed works on display: Elizabeth's stirring 'heart and stomach of a king' speech; the papal bull excommunicating Elizabeth; Mary's 10-page plea for freedom.
These sit alongside haunting objects which reveal the complex story behind the two queens' reigns. Tales of imprisonment and escape. Elizabeth's speech to Parliament on her cousin's fate. Eye-witness accounts of Mary's execution.
Enter the dark side of the 16th century. Meet the real Elizabeth and Mary.
Both of these wrap up at the end of October so time is running out!
And the Tudors to Windsors: British Royal Portraits exhibition that has been around the world (including here in Texas!) opened in Greenwich on May 28 and will run through October 31.
And finally, the celebrations of the 500th anniversary of the birth of William Cecil, Lord Burghley at Burghley House were also delayed because of the pandemic, but the did begin this year starting back in March and will run throughout the year.
Lara October 1, 2021 September 26, 2021 Book news, Tudor History news and events 0
Upcoming Books, Exhibitions, and Events for September 2021
Welcome September!! (well, in a few days). Even though we lucked out and didn't have a soul-sucking and miserable summer here in central Texas this year (I think the weather gods were trying to apologize for The Big Freeze back in February) I'm ALWAYS ready for it to be fall!
A few new releases this month!
The Tudor Times has created two new "Book of Days" that will be released this month. I have their Tudor Book of Days that was released a few years ago and it's lovely so I expect these will be wonderful as well.
The first is Queen Elizabeth I Book of Days which will be released, appropriately, on Elizabeth's birthday – September 7!
And the second is Mary Queen of Scots Book of Days which also has an appropriate release date – September 9, the anniversary of Mary's coronation as Queen of Scotland.
And also this month, Sarah Gristwood's latest work, The Tudors in Love: The Courtly Code Behind the Last Medieval Dynasty will be released on September 23 in the UK (no US release info yet, but I'll keep an eye out!).
The Society of Antiquaries have a couple of upcoming online lectures in conjunction with their virtual exhibit Henry VIII: Defender of the Faith?. And you can see past lectures on their YouTube Channel! The lectures are free, but you must register in advance. More information on each talk at the links:
First up – The Boleyns: Behind the Scenes of A Scandalous Family by Dr. Lauren Mackay and Dr. Estelle Paranque will be on September 3 at 1:00 p.m. (13.00) UK time.
And a few weeks later – Queenship in Early Modern England? will be presented by Professor Susan Doran on September 14, also at 1:00 p.m. (13.00) UK time.
The Royal Shakespeare Company's production of the theatrical adaptation of The Mirror and the Light – the third book of Hilary Mantel's Wolf Hall Trilogy – will open at the Gielgud Theatre in London on September 23 and will run through November 28.
This one closes on September 5 so time is running out!
The celebrations of the 500th anniversary of The Field of the Cloth of Gold, Gold and Glory: Henry VIII and the French King at Hampton Court Palace were delayed for about a year, but they finally started on May 20 of this year.
Lara August 29, 2021 August 29, 2021 Book news, Entertainment, Tudor History news and events 0
Upcoming Books, Exhibitions, and Events for August 2021
Wow, it's already August! I know for some people this is the time to enjoy peak summer, but I've lived in Texas my whole life and here August is usually just something to be endured (with the only relief coming from the occasional hurricane). But autumn is on the horizon!
There are a couple of new releases this month, starting off with The Boleyns of Hever Castle by Owen Emmerson and Claire Ridgway, which is out today in both the UK and US. Hever is definitely one of those high on my 'revisit list' for some future return to the UK. I visited on my first trip in 1998 and haven't been back there on any subsequent visit so I'm overdue to go back!
And the latest work by Amy Licence Woodsmoke and Sage: The Five Senses 1485-1603: How the Tudors Experienced the World will be out near the end of the month in the UK and later in the year in the US under the title Living Like a Tudor: Woodsmoke and Sage: A Sensory Journey Through Tudor England. UK or US edition – it's a very evocative title!
The Bosworth Battlefield Heritage Centre and Country Park will once again be marking the anniversary of the battle that launched the Tudor Dynasty with a week of activities and events – both in person and online this year! The Bosworth Medieval Medley will run from August 16 to 22 and includes themed walks, online presentations, and more! Please see the link for schedules, ticket information, and COVID safety measures.
No new exhibitions this month, but the ones I've mentioned in the last few months are continuing on!
Lara August 1, 2021 August 1, 2021 Book news, Tudor History news and events 0
Upcoming Books, Exhibitions, and Events for July 2021
Welcome to the second half of the year! Just one book update this month, but the rest of the summer and the fall look to have some exciting releases.
The Brandon Men: In the Shadow of Kings by Sarah Bryson was released last month in the UK and is due out in the US on July 15.
No new exhibitions this month, but the ones I mentioned last month are still going on for a while and there are a few new things on the horizon as things start to open up!
Lara July 3, 2021 July 3, 2021 Book news, Tudor History news and events 0
Upcoming Books, Exhibitions, and Events for June 2021
I only have one book on my tracking sheet for this month, although I suspect there are others that I've missed since I had a hard time keeping up with publications that were delayed during the pandemic. I also have one or two more things I am tracking but I don't have release date info on them yet. So, that means just one new release this month:
Sarah Bryson's The Brandon Men: In the Shadow of Kings is due out in print in mid-June in the UK and on Kindle in the US (print in the US next month). Nice to see some more books on the Brandons!
No new exhibitions this month, but most of the ones I mentioned last month are still going on for a while:
Lara June 1, 2021 June 1, 2021 Art News, Book news, Tudor History news and events 0
Upcoming Books and Exhibitions for May 2021
How are we already 1/3 of the way into 2021? Although my notion of time has really been messed up since March 2020 anyway…
Nathen Amin's Henry VII and the Tudor Pretenders: Simnel, Warbeck, and Warwick that was released last month in the UK is due out in the US on May 15:
And in new Tudor history books out this month, Franny Moyle's The King's Painter: The Life and Times of Hans Holbein will be out at the end of the month in the UK and in the fall in the US. I'm always happy to see more work on Holbein the man, in addition to Holbein the artist.
So great to see that a lot of exhibitions are finally opening up! Some of these have been on my radar for over a year and a half now. And I missed this first one until shortly after I posted last month's round-up:
The Philip Mould Gallery in London has an exhibition of Elizabethan & Jacobean portraiture called Love's Labour's Found that opened on April 21 and will run through May 28.
I think this exhibit was open for a short while before the pandemic set in, but regardless, now it's back on starting May 17! The Royal Museums Greenwich united the three versions of the Armada Portrait for the first time for the Faces of a Queen exhibition.
And the Tudors to Windsors: British Royal Portraits exhibition that has been around the world (including here in Texas!) will be opening in Greenwich on May 28 and will run through October 31.
The celebrations of the 500th anniversary of The Field of the Cloth of Gold, Gold and Glory: Henry VIII and the French King at Hampton Court Palace were delayed for about a year, but now they are finally due to start on May 20.
Lara May 2, 2021 May 2, 2021 Art News, Book news, Tudor History news and events 0
Upcoming books for April 2021
Events and exhibitions seem to still be on hold for a little while although it looks like some will be resuming soon. But the publishing schedules seems to finally be getting back to normal, so it's time for a new book round-up!
First up is Sarah-Beth Watkins Elizabeth I's Last Favorite: Robert Devereux, 2nd Earl of Essex which was just released in the UK and will be out in the US in a few days. I'm trying to remember of any recent books on Essex himself and not just part of an examination of the reign of Elizabeth I, so this is good to see!
Next is King & Collector: Henry VIII and the Art of Kingship by Linda Collins and Siobhan Clarke which will be out in April in the UK and in November in the US (although it appears the Kindle version will be released in April in the US as well – the link below is for the hardcover pre-order). This looks to be an interesting exploration of Henry VIII as a patron of the arts, especially for art on his favorite subject – himself! 😀
I've been looking forward to Nathen Amin's latest book, Henry VII and the Tudor Pretenders: Simnel, Warbeck, and Warwick for a while so I'm glad to see it finally coming out in April in the UK and in May in the US. I think this was one of several books of people I follow on Twitter that got hit by COVID delays.
This next book in the Chronos Crime Chronicles series is out at the end of the month and is titled Chronos Crime Chronicles – Jane Parker: The Downfall of Two Tudor Queens? by Charlie Fenton.
Finally, The York Princesses: The daughters of Edward IV and Elizabeth Woodville by Sarah J. Hodder is out at the end of the month in the UK and the US. I think the other princesses tend to get overshadowed by Elizabeth of York, so it's nice to see an exploration of her sisters' lives.
Lara April 3, 2021 April 3, 2021 Book news 0
Upcoming book releases for the rest of 2020
My schedule for making these posts is just totally messed up these days, so I'm going to try to do a round-up for a few things I've missed and some books I'm anticipating will be released from now through the end of the year. Anything new I come across that comes out in 2020 I'll put in a post at the end of December or early January.
In recent new releases, Lauren McKay's Wolf Hall Companion is now out in both the UK and the US.
And Medical Downfall of the Tudors: Sex, Reproduction & Succession by Sylvia Barbara Soberton came out in late October, focussing on what the archives reveal about the medical history of the Tudors.
And coming later this year…
Chronos Crime Chronicles – The Death of Amy Robsart: An Elizabethan Mystery by Sarah-Beth Watkins, first in a new true crime series from Chronos Books, is due out on December 11 in the UK and on January 1 in the US.
I'm not anticipating any more events and exhibitions to be opening in person for the remainder of 2020. There have been a lot of virtual events that I probably should have tried to track and post over recent months but I know it would have been as hopeless as trying to track all of the Tudor-related fiction books that come out!
Lara November 8, 2020 November 8, 2020 Book news 0
Upcoming Books for September 2020
Just a book round-up this month!
I missed a couple of things that did manage to come out in the past couple of months. The publication schedules do seem to still be in flux though so I can't promise that some of these release dates are 100% accurate!
First up, the third book in Elisabeth Wheeler's Catherine Howard trilogy, The Queen Shall Fall is now available and can be ordered through her website.
Next up, 1520: The Field of the Cloth of Gold by Amy Licence was released in the UK back in July and will be out September 1 in the US:
Lauren Mackay's Wolf Hall Companion will be out on September 3 in the UK and in October in the US:
Sean Cunningham has written the entry for Henry VII for the Penguin Monarchs series and it *might* be out in the US on September 1 and in June 2021 in the UK. I'm going to go ahead and list it now just in case it does actually release in the US this week. (The Penguin Monarchs edition is the new release, but the paperback version listed with it is actually the bio of Henry VII that Sean Cunningham wrote for the Routledge Historical Biographies series that was published several years ago).
That's it for this month! I hope you all are doing well. We're still in "stay at home as much as possible" mode here in central Texas pretty much through the end of the year, so I'm still primarily working from home and only going out for groceries. It's a little monotonous, but I do like staying out of the Texas summer heat as much as possible! 🙂
Lara August 31, 2020 October 25, 2020 Book news 0
Upcoming Books, Events, and Exhibitions for July 2020
I finally have enough things to do a round-up post again! Yay!
Tudor Textiles by Eleri Lynn was actually released back in April in the UK and US and I completely missed it, so better late than never:
Laura Brennan's Elizabeth I: The Making of a Queen was released back in April in the UK and is now out in the US too:
Nicola Tallis' book on Margaret Beaufort Uncrowned Queen: The Fateful Life of Margaret Beaufort, Tudor Matriarch (UK title) Uncrowned Queen: The Life of Margaret Beaufort, Mother of the Tudors (US title) was released back in late 2019 in the UK and will be out in late July in the US:
And finally, Glenn Richardson's biography Wolsey (part of the Routledge Historical Biographies) will be out July 20 in both the UK and US:
To celebrate the 500th anniversary of the Field of Cloth of Gold, Hampton Court Palace was due to open a new exhibition on April 10, but is now delayed until the Palace interiors re-open on July 17. In the meantime, enjoy the information about it on the Palace's website.
The Royal Museums Greenwich will be uniting the three versions of the Armada Portrait for the first time for the Faces of a Queen exhibition. I would love to see this so I'm going to be jealous of anyone who gets to visit! (This exhibition is currently closed but this is still some interesting information about the portraits on the page.)
The exhibit has been pushed back to February 2021, so I'll post it again in the new year!
Lara July 2, 2020 July 2, 2020 Book news 0
Pushing books and events round-up back again!
Since everything is still either closed, postponed, or on hold indefinitely, I'm going to wait another month for another round-up post. In the meantime I'll continue to do some more work in the background for the site and keep plugging away at finally editing a huge backlog of photos!
Lara June 1, 2020 June 1, 2020 Book news, Tudor History news and events 0
No May round-up
Since none of the exhibits I have on my tracking sheet will be able to open until at least June 1 and I didn't have any books on my list, I'll skip a round-up this month. I have links to some online info about some upcoming exhibits (eventually) in the April round-up post.
Lara May 5, 2020 May 5, 2020 Book news, Tudor History news and events 0
Upcoming Books, Events, and Exhibitions for April 2020
To the best of my knowledge, these release dates are still accurate, but I do know of a few releases that have been delayed due to the coronavirus shutdowns.
The Man Behind the Tudors: Thomas Howard, 2nd Duke of Norfolk by Kirsten Claiden-Yardley came out earlier this year in the UK and will be released on April 21 in the US.
Next up is A Hidden History of the Tower of London by John Paul Davis that came out at the end of February in the UK and will be out at the end of April in the US.
And finally, Elizabeth I: The Making of a Queen by Laura Brennan will be out April 30 in the UK and in the summer in the US.
New Exhibitions
I had two new exhibitions on my tracking sheet that were due to open this month, but of course they are both now closed. But I'm going to post them anyway for planning purposes when they do get a chance to open.
The Tudors to Windsors Exhibition that came here to Texas back in 2018 and then travelled to Australia in 2019 is now at the National Maritime Museum in Greenwich. It was originally scheduled to open April 3, but it is now delayed until the museum can re-open. In the meantime, enjoy it virtually at this page – Look Inside: Tudors to Windsors.
To celebrate the upcoming 500th anniversary of the Field of Cloth of Gold, Hampton Court Palace was due to open a new exhibition on April 10, but is now delayed until at least May 31. In the meantime, enjoy the information about it on the Palace's website.
This exhibition is currently closed but this is still some interesting information about the portraits on the page!
The Royal Museums Greenwich will be uniting the three versions of the Armada Portrait for the first time for the Faces of a Queen exhibition that opens on February 13 and runs through August 31. I would love to see this but it's quite unlikely that I'll be getting back across the pond this year (still saving up to buy a new car…) so I'm going to be jealous of anyone who gets to visit!
Lara April 2, 2020 April 2, 2020 Art News, Book news, Tudor History news and events 0
Upcoming Books, Events, and Exhibitions for March 2020
I'm pretty sure most people know that the long-awaited third book in Hilary Mantel's Wolf Hall trilogy, The Mirror and the Light will be out in early March! The book will be out March 5 in the UK and March 10 in the US.
Also this month, The Queen's Sisters: The Lives of the Sisters of Elizabeth Woodville by Sarah J. Hodder will be out March 27 in the UK and April 1 in the US.
Lara March 1, 2020 March 1, 2020 Art News, Book news, Tudor History news and events 0
Upcoming Books, Events, and Exhibitions for February 2020
The Man Behind the Tudors: Thomas Howard, 2nd Duke of Norfolk by Kirsten Claiden-Yardley came out at the end of last month in the UK and will be released in early May is the US:
And later this month, John Paul Davis has A Hidden History of the Tower of London: England's Most Notorious Prisoners coming out in the UK and it will be out in June in the US. While not solely a Tudor history book, you can't talk about prisoners in the Tower without talking about the Tudors!
Continuing Exhibition
The Bacton Altar Cloth at Hampton Court Palace – See the Bacton Altar Cloth, a rare survival of Elizabethan dress worn by Elizabeth I and the iconic Rainbow Portrait, this autumn at Hampton Court Palace. The cloth will be on display from October 12, 2019 through February 23, 2020.
Lara February 2, 2020 February 2, 2020 Art News, Book news, Tudor History news and events 0
Upcoming Books, Events, and Exhibitions for January 2020
We've got a couple of books that came out last year in the UK that will be out in the US to start the new year:
First is Melita Thomas' The House of Grey: Friends & Foes of Kings which came out last fall in the UK.
Next is the second edition of Tudor Folk Tales by Dave Tonge that will be out in paperback in the US.
And a few new releases at the end of January:
First is an academic work by Alexander Samson Mary and Philip: The Marriage of Tudor England and Habsburg Spain
And second is Sir Francis Bryan: Henry VIII's Most Notorious Ambassador by Sarah-Beth Watkins:
The annual Katharine of Aragon Festival will be held at Peterborough Cathedral from January 23 – 26, 2020. This year's program features, among other things, a talk by Melita Thomas and evening of music, drama, and dance from Spain.
Lara December 30, 2019 December 30, 2019 Book news 0
No books and events round-up for December
But there's a lot of stuff coming in 2020!
(2020!! How is that possible?!?)
Lara November 30, 2019 November 30, 2019 Book news, Tudor History news and events 1
Return to TudorHistory.org
Questions & Answers Blog
Follow @tudorhistory
Archives Select Month January 2022 December 2021 November 2021 October 2021 September 2021 August 2021 July 2021 June 2021 May 2021 April 2021 March 2021 February 2021 January 2021 December 2020 November 2020 October 2020 September 2020 August 2020 July 2020 June 2020 May 2020 April 2020 March 2020 February 2020 January 2020 December 2019 November 2019 October 2019 September 2019 August 2019 July 2019 June 2019 May 2019 April 2019 March 2019 February 2019 January 2019 December 2018 November 2018 October 2018 September 2018 August 2018 July 2018 June 2018 May 2018 April 2018 March 2018 February 2018 January 2018 December 2017 November 2017 October 2017 September 2017 August 2017 July 2017 June 2017 May 2017 April 2017 March 2017 February 2017 January 2017 December 2016 November 2016 October 2016 September 2016 August 2016 July 2016 June 2016 May 2016 April 2016 March 2016 February 2016 January 2016 December 2015 November 2015 October 2015 September 2015 August 2015 July 2015 June 2015 May 2015 April 2015 March 2015 February 2015 January 2015 December 2014 November 2014 October 2014 September 2014 August 2014 July 2014 June 2014 May 2014 April 2014 March 2014 February 2014 January 2014 December 2013 November 2013 October 2013 September 2013 August 2013 July 2013 June 2013 May 2013 April 2013 March 2013 February 2013 January 2013 December 2012 November 2012 October 2012 September 2012 August 2012 July 2012 June 2012 May 2012 April 2012 March 2012 February 2012 January 2012 December 2011 November 2011 October 2011 September 2011 August 2011 July 2011 June 2011 May 2011 April 2011 March 2011 February 2011 January 2011 December 2010 November 2010 October 2010 September 2010 August 2010 July 2010 June 2010 May 2010 April 2010 March 2010 February 2010 January 2010 December 2009 November 2009 October 2009 September 2009 August 2009 July 2009 June 2009 May 2009 April 2009 March 2009 February 2009 January 2009 December 2008 November 2008 October 2008 September 2008 August 2008 July 2008 June 2008 May 2008 April 2008 March 2008 February 2008 January 2008 December 2007 November 2007 October 2007 September 2007 August 2007 July 2007 June 2007 May 2007 April 2007 March 2007 February 2007 January 2007 December 2006 November 2006 October 2006 September 2006 August 2006 July 2006 June 2006 May 2006 April 2006 March 2006 February 2006 January 2006 December 2005 November 2005 October 2005 September 2005 August 2005 July 2005 June 2005 May 2005 April 2005 March 2005 January 2005 November 2004 August 2004 June 2004 April 2004 October 2003 August 2003 May 2003 November 2002 September 2002 May 2002 March 2002 January 2002 November 2001 September 2001 December 2000 October 2000 August 2000 January 2000 August 1999 June 1999 October 1998 June 1998 January 1998 July 1997
Re-enactments and Re-creations
Site Updates and News
Tudor History news and events
As an Amazon Associate I earn
from qualifying purchases.
Shop at Amazon.co.uk

redpajama_set_name: RedPajamaCommonCrawl


text:
Switch Re:Port Review #27: Okami HD, Overcooked! 2, and Crossing Souls
We Happy Few review
Road to Ballhalla Review
by Chris Hyde on August 9, 2018
PlatformPCPlayStation 4SwitchXbox One
DeveloperTorched Hill
PublishertinyBuild
Reviewed OnSwitch
August 2, 2018.
Well, some of the memorable ones stay in your head, and create images in your mind about that person. I know a guy called Robin Banks for example, and it's hard to imagine him without a black mask on, stripy shirt and carrying a big bag of swag. I also assumed Joy Laws, who worked in the legal team where I work, always loved her job, and the less said about Stuart Little, the estate agent me and my wife had when we bought our first house together, the better. Let's just say we made sure we hid the cheese.
So you can imagine the reaction when I received Road to Ballhalla to review. The audacious pun caused my eyes to roll so much they could very well have been the ball you control in Torched Hill's puzzler. Released a couple of years ago on Steam, the game now has a console release on PS4, Xbox One and Switch, so it's a perfect opportunity to dive in and see what it's all about. On face value, the game feels very familiar. It's a puzzler of the type that's been done a hundred times before; control a ball and roll it around a course to the exit.
But right from the off you realise that this game is going to be different.
The first thing you'll notice is this game is pretty bloody pleased with itself, confident and unapologetic in its own humour, as if the choice of name wasn't proof enough. Little chunks of text appear as you progress through the levels, some helpful, some devious, and some just downright troll you and your mistakes. If you were in any doubt about how this game goes about its business, an instance in the first level – where you're asked to avoid a laser to progress, and then after a bit of rolling, you literally get destroyed by an unavoidable laser – should put things into perspective about how seriously this game takes things. It's not afraid to have a joke, normally at the player's expense, and by and large that's a good thing. It provides a touch of humour and character to what could otherwise be a pretty dull and tedious setting.
That setting is quite stripped back, with just simple 2D movement, and the use of a boost button to speed up proceedings is all you have to navigate each puzzle. However there are a few mechanics at play which make things more interesting. Firstly your ball has a health meter of 100, that depletes if it accidentally touches red squares, and at 0 you explode and have to restart. More often than not the red squares will flash on and off in time with the game's music meaning you have to time your rolls to progress. However, if you touch a red square whilst boosting it's an instant death, so often you have to juggle the use of movement, boost, position of red squares and the beat of the music to overcome the game's challenges.
You're not timed on the puzzles, so (barring a couple of exceptions) you can go at your own pace, and figure out the best approach and timing to get to the goal. When you do reach the goal you're rewarded tokens based on your performance in two areas, the percentage of optional collectables you picked up on your way, and also how many times you respawned due to death en route to the finish. Up to four tokens for each can be earned making a total of eight tokens up for grabs for each level. Your running total of tokens is then kept, and you're required to have earned a certain amount to unlock later levels, giving a purpose to those little collectables and avoiding death.
Speaking of death, it is worth noting, you will die and respawn a lot in this game. It is a game that is difficult, both in what it wants you to do, but also the precision it requires you to have too. Timing is one dynamic, but sometimes movement also needs to be almost pixel perfect to avoid an obstacle, which turns the learning curve in the game into a very steep climb. It may be that the difficulty may put some people off, especially those looking for a more casual puzzling experience, but what is worth pointing out is that the game is incredibly fair. Sure it can hurt when you make a mistake and die, not only putting your potential tokens at risk (a real bug bear for the completionist in me), but to make matters worse often a snide comment could appear on the screen pointing out your error, inducing your inner rage. But, and this is important, if you die, it's because you made a mistake, sometimes within very narrow margins, but the mistake is still yours, not the game's. And because of that I found myself pushing myself onward, and finding the reward in those tokens all the sweeter.
Luckily, for the game and for your sake, the controls in Road to Ballhalla are very precise, with no input lag or random darting around. The ball is constantly under your control with even a slight touch of the control stick having an impact. The d-pad movement is equally as good and is better used for when puzzles require simple 4-way movement. The trajectory and momentum of the ball feels slick and realistic, making controlling it in tight spots or areas requiring quick reflexes more natural and manageable. The well-designed controls really do re-emphasise that the fault lies with you upon death, but also with you on success, which does make victory all the sweeter.
With just 24 levels to play through there will be some that will bemoan the length of game on offer here, and it is true that you will most likely finish all the levels with two or three evenings of play. However that sells short the total experience that is on offer here. Firstly there's the collecting of tokens, offering you rewards for replaying levels and beating them in a more accomplished way than perhaps you managed the first time, with tokens also unlocking cosmetic extras such as different coloured balls and boost trails. The game also has a Rush mode which rewards you with stars for beating the level without collectables in a set amount of time, further adding to the replay value.
But it is the design of the puzzles and mechanics in each level which really shines through in this game. Because each level is normally split up into a set of mini puzzle sections, it means each of them is long enough to explore a new mechanic in a few different ways. As a result the game isn't shy to throw a new mechanic at you in each level meaning each one is normally a completely different experience or challenge from the one that went before. On one level you could be having to avoid a ball that periodically falls on your current position like the Wallmaster in the Zelda games, and in another level they completely flip the camera perspective to confuse you with which direction you need to move the control stick to move your ball where you want it to go. It's a bold statement but it most reminded me of Super Mario Odyssey in the sense of having lots of ideas and mechanics and gameplay experiences all in one game. And it means that the puzzles themselves always feel like a fresh challenge that you want to explore and take on.
Fundamentally, there's a simple test that will likely indicate whether this game is for you, and it's back to the game's name again. If you think the title is a ridiculous, stupid name that isn't funny and you want to punch the person who came up with it, then chances are this game isn't for you. Chances are the quirky, trollish humour won't resonate, and on top of that the difficulty curve will likely be the icing on the cake to stop you persevering with the experience. If, however, like me you rolled your eyes, but maybe had a slight smirk about it (because let's face it no one is going to be laughing about it), and can overlook it, then chances are you'll stick with it and enjoy it. You'll find that resilience paying off during the game's more difficult sections, but the victory will be all the sweeter for your commitment. And what you'll find is Road to Ballhalla is a very well designed, aesthetically pleasing, challenging puzzler. It's packed full of variety that means despite it's difficulty it keeps your engagement throughout. A puzzler that is well worth looking into, whatever your name is.
Quirky humour
Solid and precise controls
Large array of different puzzle mechanics
Steep difficulty curve might put some off
A little on the short side if you don't want to replay levels
If you can take the difficulty on the chin, you'll experience a broad range of top-notch puzzles, that are well-executed and overlaid with a cheeky, playful tone. Rolling a ball around around a level shouldn't be this much fun.


text:
Alexander Lawrence Herdman (17 July 1869 – 13 June 1953) was a New Zealand politician. He served as Attorney-General, Minister of Justice, and Minister of Police. He is known for his reforms of the civil service and for his hard line on law and order.

Early life
Herdman was born in Dunedin. He studied at Otago Boys' High School, and then gained a law degree while working part-time. He was admitted to the bar in 1894, and established a practice in Naseby the following year. He also worked in Palmerston, where he joined the local Freemason lodge. He would retain his connection with the Freemasons over his career, eventually grand master of the Grand Lodge of New Zealand.

Early political career

Herdman began a political career in Naseby, being elected mayor in 1898. He eventually decided to abandon this by moving to Wellington in 1902, but shortly after he arrived, he was invited to return and stand as a parliamentary candidate in Mount Ida, the Otago electorate which encompassed Naseby. In the 1902 election, Herdman ran on a strongly anti-government platform, harshly criticising the governing Liberal Party. He was elected, and joined the unorganised group of independents who opposed the Liberals. He did not, however, move back to Naseby, instead representing his seat as an absentee.

In the 1905 election, Herdman was defeated. In the 1908 election, he contested the seat of Wellington North, and was elected. The following year, William Massey organised the opposition into the Reform Party, which Herdman became part of.

One of Herdman's early concerns in Parliament was the reform of the public service. Herdman believed that the service was poorly organised and subject to political patronage, particularly under the government of Richard Seddon. In the 1911 election, the Reform Party won office as the Reform Government, and Herdman was able to push through his reform proposals – the Public Service Act of 1912 established uniform conditions of appointment and promotion, and established a supervisory commissioner.

Ministerial career
In Cabinet, Herdman served as Attorney-General (10 July 1912 – 4 February 1918), Minister of Justice (10 July 1912 – 12 August 1915), and Minister of Stamp Duties (13 July 1912 – 12 August 1915). In these roles, he gained a reputation as a hard-liner, being described by a contemporary as "ready to employ force ruthlessly for the purpose of upholding law and order". Herdman is believed to have had a major role in the suppression of the Waihi miners' strike, and of the waterfront strike the following year. Both were criticised by many left-wing groups as heavy-handed and repressive, but were defended by the government as necessary steps to preserve order. During World War I, Herdman supported strong measures against anyone protesting New Zealand's participation. As Minister responsible for Police, Herdman also responded harshly to attempts by police officers to form a union, prohibiting the move and attempting to drive the instigators out of the force.

Judicial career
In addition to his political ambitions, Herdman was also interested in becoming a judge of the (original) Supreme Court. As Attorney-General, he had powers to appoint judges, and in 1918, when a position became vacant, he appointed himself. This move was criticised by many as self-interested, especially as Herdman's career as a lawyer had not been particularly distinguished. He served as a judge both in Christchurch and Auckland, and briefly acted as Chief Justice in 1929.

In the 1929 King's Birthday Honours, Herdman was appointed a Knight Bachelor.

Attempted return to politics
In 1935, he resigned from his judicial position to seek re-election to Parliament, contesting the Auckland seat of Parnell. He was officially an independent, although he had close links to the Democrat Party. He was unsuccessful, and subsequently retired to the Lake Okataina area. He died in Rotorua on 13 June 1953.

Notes

References

|-

|-

|-

|-

1869 births
1953 deaths
Attorneys-General of New Zealand
Members of the Cabinet of New Zealand
Mayors of places in Otago
Reform Party (New Zealand) MPs
Politicians from Dunedin
New Zealand Freemasons
Unsuccessful candidates in the 1905 New Zealand general election
Unsuccessful candidates in the 1935 New Zealand general election
Members of the New Zealand House of Representatives
New Zealand MPs for South Island electorates
New Zealand MPs for Wellington electorates
People educated at Otago Boys' High School
New Zealand Knights Bachelor
New Zealand politicians awarded knighthoods
Justice ministers of New Zealand

redpajama_set_name: RedPajamaWikipedia


text:
Amar Ibrahim (* 1967) je specialista na zvládnutí extrémních situací a instruktor kurzů přežití v přírodě i ve městě. Je autorem knihy Kurz přežití pro děti.

Život a kariéra
Amar Ibrahim se narodil v roce 1967 v Domažlicích. Jeho matka je Češka, otec Peršan. Od roku 2006 se věnuje přežití v extrémních situacích. Je ženatý a má čtyři děti.

Své zkušenosti předává široké veřejnosti i profesionálům z řad ozbrojených složek. Má atestaci jako zdravotník v extrémních situacích, absolvoval kurz CQB a kurz přežití v zahraničí.

České zbrojovce pomáhal s testováním oblečení 4M a podílel se i na vývoji potravinových dávek pro armádu a civilní sektor.

Kurzy přežití
Od roku 2006 pořádá Amar Ibrahim kurzy přežití v přírodě, kterých se účastní veřejnost i armádní specialisté. Zaměřuje se také na Urban Survival a přežití v extrémních podmínkách. Radí, jak si poradit v situacích, jako je například epidemie.

Stopy války
Vedle kurzů přežití se Amar Ibrahim zaměřuje na historii druhé světové války a zájemce provádí po místech spojených s osvobozováním západních Čech.

Kniha Kurz přežití pro děti
V roce 2021 vydal v nakladatelství Albatros Media knihu Kurz přežití pro děti, ve které popisuje základní dovednosti přežití v přírodě.

Reference

Narození v roce 1967
Muži
Žijící lidé


This card was issued in Finland by Hellas in 1962. It is card number 55 from a set of 95 cards entitled "Pop and Film Stars (II)". The front of the card shows a colored picture of Helen Shapiro while the back of the card has the card number, the title and a brief description in Finnish and one other language (Swedish?).The back is similar to the sample shown. The card was given as a free premium with the purchase of gum. The size of this card is approximately 2.1 x 3.2 inches.
This card was issued by Mister Softee Ltd. (Ice Cream) in 1963. It is card number 13 from a set of 20 cards entitled "Top 20". The card was given as a free premium with purchases of Mister Softee's Ice Cream. The front of the card shows a photographic type representation of Helen Shapiro, while the back of the card has a card number, set number, and biographical text.


text:
Top Hotels Near Spark Arena
Australia - New Zealand and the South Pacific •
New Zealand •
Auckland Region •
Auckland •
Spark Arena
Auckland Central Business District Travel Guide
Flights to Auckland Central Business District
Things to do in Auckland Central Business District
Car Rentals in Spark Arena
Spark Arena Vacations
Spark Arena, current page
Check Prices on Hotels in Spark Arena
Featured Hotels Close to Spark Arena
See all 971 Properties in Spark Arena
Adina Apartment Hotel Auckland Britomart
4.5 out of 5.00.1 mi from Spark Arena
Location is great for city stay, convenient to centre and ferries
Waldorf Stadium Apartments Hotel
Great service, room got upgraded. Tidy and maintained
Pullman Auckland
Of all the hotels I have stayed at this has been the best for value for money. The service is outstanding and the facilities are of a very good quality. The breakfast was delicious. Proximity in the city and surrounding areas perfect. We will be back
Staff were great. ..........................................................................................................................................
Stamford Plaza Auckland
The staff were so friendly and helpful. The hotel was clean throughout. Bed was comfy with an excellent pillow menu.
Buffet Breakfast had huge variety and very tasty. Staff were also very accommodating and extremely friendly!
Skycity Hotel
Central to everything. School holidays visit - perfect for kids. So much for them to do
Love it always stay. Gusto is our fave place to eat in the area
Great location, great design and great breakfast! Jozef at the check in desk was exeptional. Hope we can return back one day for a longer time.
Spark Arena Hotel Guide
Spark Arena is a great starting point for a vacation.
You can locate it in Auckland, a city that attracts sightseers from far and wide.
With an impressive 86 hotels within a radius of 2 miles around Spark Arena, you're sure to track down the perfect place for you. A few are the Hotel DeBrett, the Hilton Auckland and the Ascot Parnell Boutique Bed and Breakfast, just 0.6 miles, 0.8 miles and 0.9 miles away, respectively.
If you don't want to fork out a fortune on accommodation, you'll be pleased to hear that there are several budget hotels in the area. The Auckland Northshore Motels & Holiday Park and the Silverfern Backpackers are a few of the more frequented places.
If you're keen to splurge on something more extravagant, you have many upmarket hotel options at your fingertips. Just two hotels that lead the way in terms of comfort and design are the Skycity Grand Hotel and the Sebel Quay West Auckland, which are located 0.8 miles and 0.7 miles away, respectively.
If you wander around the streets near Spark Arena, you will soon stumble upon Mahuhu Espresso. Go for a coffee break, grab a sweet treat and appreciate the distinctive sights and sounds. Yard Bar & Eatery is also a short distance away if you're looking for a more substantial meal. Are you buying the next round? Keep the beverages flowing at Heineken Green Room.
Other Places to Visit near Spark Arena
Not ready to leave just yet? Well, hold on because there's more than just Spark Arena to do in the region:
Enjoy being among the calm surroundings at Auckland National Library of New Zealand while feasting your eyes upon its books and periodicals.
Stand back and admire the impressive architecture of Auckland High Court, one of the region's modern government buildings.
St Andrew's First Presbysterian Church is a revered place for many, but anyone can enjoy its peacefulness.
The scenes inside Old Government House have played a huge role in shaping the region over many years.
Visit University of Auckland and marvel at the building's detailed architectural design. You may also schedule a tour and wander down the halls where many alumni, including some who have helped shape today's society, once stood.
Auckland Strand Station is the nearest rail station to Spark Arena. It's just 0.2 miles away. Parnell Train Station is yet another terminal. It's 0.5 miles away.
More Popular Hotels in Auckland Central Business District
The Quadrant Hotel & Suites
CityLife Auckland
Crowne Plaza Auckland
Waldorf St Martins Apartments Hotel
ibis Budget Auckland Central
Barclay Suites
See a list of all hotels in Spark Arena
Hotels near Other Auckland Central Business District Attractions
Hotels near Sky Tower
Hotels near University of Auckland
Hotels near Kelly Tarlton's Underwater World
Hotels near Mt. Eden
Hotels near Auckland Zoo
Hotels near Eden Park
Hotels near Auckland Domain
Hotels near Queen Street Shopping District
Hotels near Auckland War Memorial Museum
Hotels near Harbour Bridge
Hotels near Auckland Town Hall
Hotels near One Tree Hill Domain
Hotels near Auckland Ferry Terminal
Hotels near Rainbow's End
Hotels near Princes Wharf
Hotels near SkyCity Casino
Hotels near Takapuna Beach
Hotels near Sylvia Park
Hotels near Viaduct Harbour
Hotels near Western Springs Stadium
All-inclusive Resorts in Roatan
Hotels in Nags Head
Hotels near Paul Brown Stadium
Casinos in Albuquerque
Hotels in Pebble Beach
Red Roof Inn Rochester - Henrietta
Ski Hotels in Miami Beach
Hotels in Nebraska City
Marriott Hotels & Resorts Hotels in Ocala
Marriott Hotels & Resorts Hotels in Bloomfield Hills
Benchmark Hotels in Lake Tahoe
Four Points by Sheraton Auckland
Hilton Hotels Hotels in La Condesa
Fairmont Jasper Park Lodge
Hotels in Whiteville
Honeymoon Resorts & Hotels in Hollywood
Hotel Marina Riviera
Hotels in Auckland Central Business District
Sofitel Auckland Viaduct Harbour
Swiss-Belsuites Victoria Park Auckland
Waldorf Tetra Serviced Apartments
Star Queens Serviced Apartments
Auckland City Hotel - Hobson Street
Scenic Hotel Auckland
Quest on Hobson
Flights from Los Angeles Intl. to Dublin
Flights from Los Angeles Intl. to Baiyun Intl.
Mazatlan Vacations
Car Rental Pitlochry


PARK TWP. — Mercedes Martinez had come to expect a certain level of excellence from herself.
The Grand Valley State senior swimmer made the NCAA Division II championships as a freshman and sophomore, but as a junior, Martinez struggled to stay healthy and missed qualifying for nationals for the first time.
It stung, and has motivated the West Ottawa graduate not to let her swimming career end in that same, disappointing fashion.
It also motivated her to take a look into her own health and what she was putting in her body.
That was evident at GVSU's mid-season taper meet, the Calvin invite.
"I had my fastest dual meet times I have every had early this season, so going into the Calvin invite, I had a lot of confidence. I ended up getting personal records in almost everything," she said.
Martinez swam the 100 butterfly in 55.63. In the 100 freestyle, she went 51.9 (just off her best time). In the 50 freestyle, she went a 23.9, in the 200 butterfly, she went 2:07.3 and in the 200 free, she went a 1:55.
Martinez followed that up with a GVSU pool record in the 100 butterfly (56.91), earning GLIAC Swimmer of the Week honors.
Her ability to fight through a tough season and figure out a solution is something her teammates take notice of. Martinez, despite being relatively quiet, has thrived as a captain of the Lakers this year.
That quiet leadership doesn't go unnoticed. She has been an All-American swimmer multiple times and also earned Scholar All-American honors.
Martinez got engaged in October, which added another layer of joy to her senior season.
Martinez is hoping the exciting year continues.


text:
CostFeaturedMetal 3D PrintingMetal Additive ManufacturingSurface Finish
Understanding Surface Finish in Metal 3D Printing
By 3DEO June 4, 2018 August 18th, 2020 No Comments
While metal AM brings with it a host of positive advantages, it's important to understand the realities of as-printed surface roughness. This understanding will help design/engineering teams understand the costs associated with bringing 3D printed parts to a suitable finish.
Metal additive manufacturing is quickly making a name for itself as an up-and-coming manufacturing technology. The shift in transitioning from traditional manufacturing to metal 3D printing is being driven by a variety of advantages, including product-development flexibility and the ability to produce parts so complex they'd be impossible using conventional methods. While these positives are significant, there's one area in which metal AM has historically struggled relative to other techniques: surface finish.
Why Surface Finish Matters in Metal 3D Printing
This disadvantage varies in significance by application. Sometimes, roughness may not matter at all, and can even be a good thing in certain situations. Most components, however, will eventually end up as part of an integrated system that requires a certain level of smoothness.
Metal 3D printing, regardless of material, has struggled to produce smooth finishes.
Reducing friction is critical in mechanical parts like pistons, bearings, and seal surfaces where too much contact between moving surfaces can lead to rapid wear-and-tear. The rougher the surfaces in an integrated, dynamic machine, the less quietly, efficiently, and safely they'll operate. The specifications will differ case by case, but the smoothness required of an end-use part can be an important factor to weigh in costing it.
Surface Finishes of 3D Printed Metal Parts vs. Conventional Mfg.
It's important to quantify the trade-offs associated with 3D printing a component instead of using CNC machining, casting, or metal injection molding. While many variables influence the final Ra (roughness average) of a part, metal 3D printing produces parts with greater surface roughness than do these methods. Metal injection molding typically delivers the smoothest finishes (with a typical Ra of 30-50), while casting is relatively rough (ranging between a 100 and 500-micrometer Ra).
Metal AM, on the other hand, has very rough surface finish – typically in the 250 – 400+ Ra. Part of the challenge, of course, is that there are so many types of metal AM processes, and each has its own roughness. The specific type of printer used, part complexity, and materials used can all play a major role in the final roughness of a component. The range of technologies has resulted in a range of surface finishes between 200 and 1000 Ra, making it harder for manufacturers to pin down the exact smoothness they should expect.
The Critical Impact of Surface Finish on Part Cost in Metal AM
The bottom line is the closer to the final required finish before post-processing, the lower the finishing operation will cost. If a part is 800 Ra and needs to be < 50 Ra, a lot of work needs to be done to get there.
Before settling on a production technique for a given component, manufacturers should factor their surface finish requirements into the overall cost equation. No matter what production process is used, parts must meet design specifications that often include measures of surface finish. If the end-use application of a component calls for a roughness average of under 200 micrometers and the part exits the build chamber with a Ra of 500 micrometers, that's a problem that will take time and money to rectify.
Nearly all 3D printed components require some form of secondary finishing, which adds time and cost to the manufacturing process.
Common Surface Finish Post-Processing in Metal AM
There are a number of common post-processing techniques that can bring a 3D printed part to the necessary smoothness. Disc finishing, high-energy centrifuge, and stream finishing have all been applied with success in reducing the roughness associated with metal AM. These processes, however, aren't always controlled in-house. Anytime a manufacturer has to outsource post-processing, frictional costs are incurred: shipping and administrative expenses come into play on top of the actual costs of having the finishing done. There's also an increased risk of quality issues creeping in when multiple parties are involved. At the extreme, post-processing costs can erode the advantages 3D printing brings in the first place by adding steps (and time) to the manufacturing process.
Best Surface Finish in Metal AM – 3DEO
In order to continue to widen the addressable range of manufacturing needs metal AM can meet, it's imperative that surface finish in metal AM improve dramatically. That's why 3DEO has made significant investments to achieve what is commonly called "the best surface finish in metal 3D printing."
Our patent-pending Intelligent Layering process maintains the value of the 3D printing process by consistently achieving finishes as smooth as 100 Ra. In addition to the as-printed surface finish, 3DEO's parts have been polished to < 10 Ra. Surfaces this smooth improve end-use functionality and eliminate the need for secondary treatment in many applications—not to mention their aesthetic value.
This level of finish is on par with the smoothest casted surfaces and is substantially better than what's currently possible elsewhere in the metal AM industry. If your design specifications call for still smoother finishes, 3DEO also offers a number of post-processing options that we control in-house that can get below 10 Ra. We're thus able to control the entire production process from start to finish and tightly manage both costs and quality. You can find more on the technical specifications associated with our proprietary technology here.
Previous PostThe Economics of MIM Versus 3D Metal Printing
Next PostLow-Cost Production Metal 3D Printing: 3DEO's Intelligent Layering®


There are several programs for using git on windows, some examples for good programs can be found below.
This is another program that incorporates a "right click" workflow.
To merge two files with the help of a file comparison tool you can see a comprehensive list of programs on this Wikipedia site. One recomended choise is Meld.
Licenses: When you are asked for a license when creating a new repository choose the GPLv3 license.


Does it seem that your application group is doing all the running it can do only to keep in the same place? I suspect many groups try all kinds of incentives and magical new technology to run "twice as fast" as "all the running they can do" without measurable success.
Measuring and demonstrating success can be challenging, too. No longer is it effective simply to show the cost of IT as an ever-decreasing percent of revenue. Companies must find a way to demonstrate that IT is both creating business value and improving operational performance.
One way is to take a higher-level view by calculating your application group's Innovation Quotient. It's a simple formula: Innovation ÷ Run & Maintain. That is, how much you spend on innovation/R&D, divided by the amount you spend to run and maintain your current portfolio. Most organizations, spending the standard 80 percent on maintenance and 20 percent on innovation, have an IQ of 0.25. Our goal at CSC is to help you dramatically improve that ratio (imagine spending 80 percent on innovation!) and raise your IQ toward 4 — as much as 16 times the previous innovation quotient. Now we're really getting somewhere!
Measuring success is one thing. Figuring out how to run twice as fast as you possibly can – that's quite another. The answer is a flexible, service-enabled IT enterprise that drives rapid innovation and digital transformation. Digitally remastering your business applications will require you to execute a combination of renovate, innovate and integrate strategies, and increase adoption of utility (OpEx) and as-a-service (aaS) consumption models.
In a service-enabled enterprise, the agility comes from agile business process management (BPM) and smart integration of applications on an optimized mix of hybrid cloud architectures. It's smarter, faster and cheaper. No longer is the conversation about "why?" or "what?" but about "how?" to get this done.
As always, you'll need to start with a roadmap, a plan and strong governance. Then, to create an elastic foundation, build out a hybrid cloud infrastructure that incorporates your private cloud platforms and future public cloud services.
In your target environment, applications are natively omni-channel, distributed automatically and often built on top of other companies' services. This stage is about application modernization, hybrid cloud adoption, integration and SaaS enablement.
The purpose of the third stage is to rapidly accelerate business agility and the evolution of new business models. Innovation comes through wider open-source adoption, APIs everywhere, DevOps, app malls and social collaboration.
With all the pieces in place, you're in a good position to drive outside-in thinking. The digital economy connects people, places and things to drive disruptive change. We are all now familiar with the emergent players that have disrupted retail, music and transport. Next up will be industries like insurance, banking, manufacturing and energy.
Drinking Alice's magic potions won't help you get ahead of your competition in the Red Queen's Race, but continuing to raise your IQ might just get you out in front.
Mike Williams is general manager of application services at DXC. Mike brings a suite of solutions to the global IT market designed to help clients achieve their performance targets as they face the challenges of digital business. As a former CIO, Mike has great experience in leading business and IT transformations. He has developed a clear strategy and pragmatic approach for clients to put modern application solutions in place to address their business needs and propel them on their digital journeys.
The DXC on Applications blog is written by DXC applications experts who focus on helping clients develop, modernize, test and manage their applications, including non-cloud application portfolios. Join us as we discuss key topics through industry and solution specific perspectives.


Hilaria Baldwin somehow manages to fit it all in. Mom to three children—Carmen, 4, Rafael, 2, and Leonardo, 1—with another on the way, she's a yoga guru, author and social media maven. She married Alec Baldwin in 2012, and last summer they renewed their vows at their beloved Amagansett home. A native of Mallorca, Spain, Hilaria is a committed New Yorker now, and although she says she misses the year-round warm weather, the holiday season in the Hamptons brings its own special warmth.
Behind the Hedges: Had you ever been to the Hamptons before you met Alec?
Hilaria Baldwin: No. In hindsight, it seems like it sounded like a fancy place. But when I met Alec, I worked 365 days a year. Since I worked every day, it was a real struggle for Alec to get me out to the Hamptons, but once he did, I immediately fell in love with the place. It's our little paradise.
Things are different now, of course, with three kids and Alec frequently doing SNL. It's a real schlep to get all the children in the car and load up all their stuff, and then someone inevitably has to go to the bathroom. But I have this new invention, a disposable potty to keep in the car. I don't know, being pregnant, I might need to use it myself sometime!
BTH: What are some of the things you like to do out here, either alone, with the children or with Alec?
HB: I rarely ever get to be alone! And really, when I'm pregnant, I'm never alone. But if I can, I like to go running or jog on the beach, barefoot. I also love the BARN on Butter Lane in Bridgehampton. Sometimes I like to go to the spa and get my nails done—these days I have to space out my manicures and pedicures as long as possible—but now Carmen wants to come with me, so that's not really alone time either.
Alec and I like to go out to eat after the kids are in bed. Our top favorite is Highway Restaurant. Their kale salad is delicious and they have amazing fish. I usually order pasta there. Another favorite is the new Wölffer Kitchen in Amagansett, which is incredible.
BTH: You renovated your Amagansett home so that each of your three children have bedrooms the same size. Now what happens, since you're expecting a fourth?
HB: We might have to do one more renovation! Maybe we'll add another seven rooms or so. We'll have three boys and one girl. Carmen wants a sister, so we might have more children in the future. They're all so small now—we're not sure what we're getting into!
My fur-babies, too, love the Hamptons. There's plenty of room for them to run around. They're tiny little dogs, but they love to chase deer. Their ancient wolf instincts come out! You have to wonder, what would my dogs do if they actually caught one?
BTH: With three children, one on the way, and a busy career, do you ever get any rest?
HB: It's all about a healthy balance. It's easy to get overwhelmed, but you need to keep your perspective. Yes, stuff is going to happen and nothing is going to be perfect. I keep my expectations low. That said, I love life, love to seize the day, and I love sleep.
BTH: What do you love about celebrating the holiday season here in the Hamptons?
HB: I recently took Carmen to East Hampton Gardens, which is magical. We picked out a few Christmas ornaments. We'll head over to the Montauk Lighthouse while it's still lit for the season. We go to church on Christmas Eve at St Luke's, next to Guild Hall. We love to decorate our house: the tree, hanging stockings. In the city, we have a city-sized tree, but in Amagansett we have plenty of room. We love to take the children to meet Santa—it's so sweet!


is a tribute to our family's German heritage, having modeled it after the great pilsener beers of Southern Germany. Made with all malt and noble hops, this pilsener has a medium yet dry body with a slight hops bitterness that finishes clean.
is an example of the consistency one would expect from a great German wheat beer. Thanks to our Munich-born weizen yeast, this unfiltered wheat ale has a fresh ripe banana flavor and aroma with a hint of cloves.
Although our family has traditionally produced lager beers, we wanted to make a beer that showcases the American Craft Brewing Renaissance! Enter Mild Pale Ale, an English-Style Pale Ale. Brewed with pale and caramel malts, and hopped exclusively with Goldings, this pale comes through incredibly mild and dry on the tongue, while still allowing the hops to come forward in a sylvan, earthy bouquet.


Careful...those eyes are so big you might fall in! Of course, you could break your hand on that six-pack, too, I'm sure.
Those eyes are absolutely gorgeous!
ooooo, i just want to bite that little belly... yummy!
Congratulations on being Member of the Week!
Congratulations on being blog of the week! And he's soooo cute!You're so cool!
Yay! Gangsta untucked shirt Archer!


text:
MY BODY IS MY OWN: Regional launch of UNFPA State of World Population Report
Date: 14 April 2021 Time: 12:00-13:30 CET (13:00-14:30 Istanbul time) Location: Facebook LIVE (@unfpa.eecaro) Join UNFPA Eastern Europe &...
see event >
"Without Taboo" - a new educational game for teenagers and young people about violence prevention and reproductive health
"Without Taboo" is an educational and interactive game developed by UNFPA Moldova for adolescents and youth over 15 years old. It includes quizzes...
Supermodel and philanthropist Natalia Vodianova teams up with UNFPA to end the stigma around women's bodies and health
New York, 24 February 2021 - Supermodel, philanthropist and impact investor, Natalia Vodianova was today appointed as Goodwill Ambassador for UNFPA,...


text:
Powerful Lessons for Entrepreneurs From Tech's Most Successful Leaders
At the heart of technological innovation is a burning desire to create something dynamic and practical that people don'…
by Christopher Connors
A Near-Death Experience Led This Entrepreneur to Start a Store and Make $20,000 in Three Months
At just 24-years-old, Chester Lee has already been hustling for most of his life. At eight, he started designing websit…
by Allanah Faherty
Meet the Entrepreneur Trading a Bobby Pin For a House (and Documenting it all on TikTok)
Oberlo has featured a lot of amazing entrepreneurs over the years. We've written about people who have discovered new p…
Making $10 Million in One Year With Dropshipping
When Andreas and Alexander first started dropshipping, their goal was to hit $1,000 per day in turnover. It took a year…
The Secret To Hitting the Magic $1 Million Mark
Many people think starting an ecommerce business has to be a full-time gig. Sure, there are many things you have to do …
Luck and Learning From Failures Led this Entrepreneur to Make $100k From Bubble Tea Plush Toys
After just a few email exchanges with Tze Hing Chan, it was abundantly clear the young Malaysian entrepreneur is the de…
What Do Successful Dropshippers Move on To?
The convenience of the dropshipping model makes it a relatively easy business to set up. With no inventory to deal with…
by Ying Lin
The Unsung Hero of Success
There's a famous Picasso anecdote that goes like this: In a restaurant one night, a man approached the painter and aske…
From Startup Creator to Serial Entrepreneur: A Journey Powered by Dropshipping
Have you ever heard of serial entrepreneurs? Setting up a business – whether as a freelancer, a startup, or an e-commer…
by Audrey Liberge
Does Luck Matter in Success?
Sometime in 2019, a tiny, microscopic parasite, answering its instinctive call to survive and thrive, came across an op…