I have written about Jamie Oliver in Boots a few times and the brand asking to extend the lunch price from £3.29 to nearer £7.00. A lovely idea, but unlikely in practice.
As much as I wanted to try it, I couldn't quite bring myself to buy the sandwiches. Call it mental block or sheer tightwaddiness, But finally, the other guy blinked and they have added the whole Jame Oliver range into a form of meal deal. It's not within the full £3.29 spectacular, but rather a £4 partnership with Innocent.
This is quite clever. Brands hang out with brands that work for them and make each other look good. By sharing the deal, the two brands feed off each other and may both benefit.
So, I bought one. A 'Proper Salmon Sarnie' and I have to admit it was up there with the nicest sandwiches I have ever had from a supermarket. Certainly equal to the taste of the 'Taste the Difference' sandwiches in Sainsbury's, which are part of their £3 meal deal.
So, maybe there's hope for the range yet.
Okay, I know it's early for 2011 predictions, but after a good holiday, my thoughts were turning to what will happen when I get back to work.
So this is what I predict will change – or start to change – for 2011.
Parents have to let children have a bit of slack again, take some risks and make their own mistakes. Electronics are not a substitute for play, they are a substitute for imagination and our children will be far duller because of it.
When they did go onto the beach, they were entertained for hours, with digging, building, wave jumping, skim boarding and even skimming stones. I don't want to sound like a real old fart, but I honestly believe that it's changing. We have enough electronic stuff.
We have so many different ways to take in our news now, be it iPad, phone, RSS, texts, or heaven forbid, newspapers. How do we choose? Mostly we seem to dip in and out of all of them, so delivery of great content across every platform will become vital.
But deciding when to take this in will also grow. Rather than just grazing and developing such a low boredom threshold that we never actually take any of it in, will stop, so I predict that long copy (if it's relevant, engaging and well enough written) will make a comeback.
Twitter is fine, but it's all a bit Chinese meal. You are left wanting more, without ever getting full. I'm a little bored of it myself and am tweeting far less than ever before.
So I'm going to be more defined about what I do and when.
Our generation of 40 somethings have become very lazy drinkers with a glass of wine or two with every evening meal and then a thrash at the gym to try and work it off.
The Telegraph and others reported this week that there has been the sharpest drop off in drinking since 1948 – and again, I'm not surprised.
The drinks we are now consuming have gone the same way as our food. Full of additives and designed to a price point. If they can't make it naturally, then they make it un-naturally. Find me a wine without a Sulphite in it these days and you are way above the everyday drinking range. Is that good for us? I doubt it. Are we getting more aware of what we eat? Without doubt.
The gym market is busted. People who join gyms, don't lose weight. They may shift it about a bit, but it very rarely drops off completely. So what's the point?
It's much nicer going for a walk or a ride along the river on your bike, than sweating it out with beautiful people anyway, so why pay for the privilege?
There are two gyms near me that are breaking new price points. One at £10 per month, literally across the road from Purple Circle's studio and the other, that I go to is down at The beautiful National Watersports Centre in Nottingham and is only £15 per month. Great if you want to hammer the rowing machine looking over a lovely lake, but crap if you want to be seen by beautiful people.
Kia started it with Cars, Vauxhall have half-heartedly followed suit with a lifetime warranty that's chock full of caveats (not if you sell it, 100k miles, only if we service it, etc etc etc.).
But for me, this means that things will be built better again. It's no use offering a long warranty if you're going to have to keep repairing it every few months. The only way around it is to build things to last, like they used to do, you know in the old days.
I hired a Kia on holiday to see what it was like. It was actually fine. A bit like a domestic appliance, but as a cheap and cheerful vehicle, it was just that, fine.
there is no doubt that we are not out of recession in the UK yet. The government's announcement of where their cuts will fall that is due later this month or in October is keeping many on tenterhooks to see if they will be out on their ear and that will continue to curb spending.
In a way this is related to the point above about warranties but I think it is more so.
People are making more considered purchases. Either buying fewer better things that they have thoroughly researched on the Internet to find the best price, or zapped using the RedLaser App. If they can't afford what they want, they are not buying cheaper alternatives, they are not buying. Full stop.
I can see this continuing right through 2011 and maybe lifting the gloom for Christmas 2011.
If all is doom and gloom around us, then we still want to feel good, so those that offer a dose of happiness will succeed, as long as it's not too short term in its gratification.
I'm not talking just about sweets and crisps, but about those that warm the soul too. They make you feel good about your purchase and allow you to reflect with a warm glow into the long term.
Innocent still fall into this category as do the likes of Covent Garden and BeWILDerwood, but I think it will be a long, long time before we start buying Bernard Mathews or anything with an England Football logo on it – despite their win last night over Switzerland.
I'm sure there's more. Feel free to have a think and add your own thoughts. I'd love this list to grow and grow.
If Howies, Innocent and Rachel's Organic are the star brands now, well what's next?
Are all of our mega brands becoming a but samey?
If imitation is the sincerest form of flattery and flattery will get you everywhere, perhaps that's why all of the best brands of our age are all becoming a bit, well, samey.
And, If green is the new black, organic is the new everyday, and hybrid is no longer just for those who prefer to knit their own yoghurt, I have to ask, what will come next as the real differentiators for our current mega brands that we all look up to?
There is no doubt that any trend is just that, a trend. And trends come and go. I'm not even slightly saying that Howies, Innocent or Rachel's have copied each other, it's just that as these are at the front of the curve, the rest of the market will be following. Every new brand we are being asked to look at, needs to add a little hug here and there, a bit of planet kissing and some stout green nosing for good measure.
They are all drifting towards a level of sameness that will slowly see the current heroes be caught and potentially overtaken. Unless they move their own cheese and get themselves into a new and worthwhile position before the others even get there, they will no longer be the top brands in their own sector, let alone any other sector.
I think a change is a coming. I believe that brands grow so fast these days that they are likely to die just as fast. In the perfect market that we now live, where all of the people have all of the information a new brand can literally come out of nowhere and achieve the status of our current heroes.
So where will this brand come from?
A few pointers that have been gathered over lots of episodes of Trendwatching and lots and lots of reading around the subject.
1. It will be from the quality end.
This recession ain't ending fast, so people will buy fewer things but better quality things, that give them the status they seek.
Everyday is mundane. It will be a treat that is a little naughty and a bit of a backlash against the goody goody era in which a 4×4 is the work of the devil. Once we all survive the Swine flu myth, we'll want to kick back and live a little.
If you achieve worldwide distribution overnight, you kill the golden goose. Leaving them wanting more, works.
Like any normal distribution curve, the green revolution will fall off and the responsibility for greenness will be thrown back to the manufacturers. The public will simply expect them to do the green worrying for them.
I'd love to know what people think this new brand or new market could be and whether they agree with my four points above.
Answers on a patent application would be most welcome.
Thanks for the image of his niece Sobrina to Corre Madrid. See more work here.
The etiquette of Twitter – That would be Twittiquette then!
I tweet therefore I am, but I listen too.
Twitter isn't that new to many people, but its scarily new to others and as such, the etiquette of how to use it is only now beginning to emerge.
But to understand the etiquette, I think you first need to understand its purpose – or at least what I believe to be it purpose.
I believe Twitter is for building likeminded communities. Groups of people from around the world who share some form of common interests. Those communities can be in many or any different areas.
1. In its most high profile form, this can be for celebrity watching. The likes of Britney and Ashton Kutcher, send out inane insights into their daily lives, that few but the most committed fans could possibly care about. The fact that these two have millions of fans between them, that hang off their every tweet, shows that some people must care. I'm not one of them.
2. For campaigning it works amazingly well. Barak Obama famously built his campaign and campaign coffers on the back of his connections he built through Twitter. No election anywhere in the world will ever be the same again. The people of Iran displayed their dissatisfaction with the voting system and twitter stayed open for them to give them a voice to the outside world.
When anyone first saw Twitter, I would suspect that there were VERY few people who would have believed that it could have such a huge impact on the workings of world politics.
3. Finding and learning from likeminded peers has to me, proved the most valuable way to engage with Twitter. My work is based on the subject of branding, innovation, marketing and business psychology, so I am actively looking for people who talk about these subjects anywhere in the world on the Twitter network.
I have open searches on Tweetdeck for these words (as well as Nottingham and Margate for other reasons) and can refer to anything that is written in these areas. It beeps at me every minute and can be hugely distracting, but eqally informative.
If I see something that I think is valuable or leads me towards an article I find useful, then I will follow the person who posted it and begin to build some dialogue with them, by Retweeting their good bits and trying to read as many of their thoughts as they care to share.
But what if they don't follow me back?
Well, for me, this is the wrong way to use the system.
Maybe everyone isn't saying this, but certainly those who choose deliberately to not follow you back, are.
It's like big business sending out emails from 'donotreply email addresses' They are effectively saying that they don't care what you say, but are asking you to click through and buy from them. I covered this in more detail in the piece last week about Social media.
So, if after a week or two, people are still choosing to not follow me back, I stop following them. If they don't care what I am saying, why should I care about what they are saying? Are they really so wise, that they have nothing to learn at all?
Not following is probably okay, or at least understandable for celebrities. I do think that it is a bit arrogant for them to only follow their fellow celebs, just to show how well connected they are, and to reinforce the fact that we are not in their 'A' list of friends.
So it comes back to the purpose of Twitter for the masses. Is it to build communities or relationships or just to shout about the fact you are on a train or eating your lunch?
If it is about relationships, then speaking without listening won't keep you in a relationship for long. See how you get along for a day at work ignoring everything your colleagues say to you.
As Innocent Smoothies taught me in their book. If you're talking you're not listening.
So, do the right thing. Listen as well as speak.
This is one of the most exciting and informative presentations about Social media I have ever seen. There are so many lessons to come from it that it seems obvious to pick to what I think are the main few for us to learn from in case you don't have time to go through it yourself.
1. If your product is crap, no amount of social media will make it less crap.
2. Listening is the most important thing you can do. Social media is about building dialogue and not diatribe. As innocent said here, when you are talking, you are not learning. Most research departments do not send out the emails, it's the sales departments and they rarely ever speak.
3. Sending emails from 'do not reply' addresses is just plain rude and bad for business. What you are saying is that 'We are speaking and not interested in what you are saying, so shut up' – unless you want to place an order – in which case ring this 0800 number or click through to our friendly smiling website.
4. 85% of social media users have said that they expect companies to have a social media presence and then use it to actually interact.
5. Having a strategy to engage is the way forward. Look at all the social media options, decide what is right for you and then dive in.
6. Stop thinking social media campaigns and start thinking social media conversations.
7. And the three final rules in summary.
If you don't measure its effect, how do you know if its working?
And thanks to Andy Hanselman for showing me this presentation via Twitter.
There are few books that I have ever read that I have enjoyed more than this, because it is so obviously living its own values throughout every single element of the presentation.
From the beautiful simple writing to the clear, friendly design, it is a must read for anyone who wants to truly understand what branding is really about – from the masters of what branding is all about.
So what are the key learnings for me that came from reading and really thinking about what they are saying. Well, there are lots of them, but these are my top ten which made a real and lasting impression.
1. You don't need masses of experience to start a business, but you do need an awful lot of determination and a brilliantly differentiated idea.
2. If you don't get it right first time, it is not a failure, it is a potential lesson on the way to getting the right answer.
3. The beauty is in the detail. Its easy to do the big things right, but the differentiation comes in the small stuff that no-one else does like you.
4. Create a set of values that you really believe in and then deliver them ruthlessly at every single level of the organisation. Have fun, you spend a lot of time at work.
5. Recruit and retain brilliant people, even if they are not the same as you, but make sure you have a clear role definition for all of them.
6. Give people real responsibility to manage their own areas and then measure them on that. If they don't measure up, help them move on.
7. Profit is not a dirty word, it allows you to continue to do more of what you do and live your values even more clearly.
8. Keep listening as you aren't learning if you are talking. Look for inspiration everywhere, however random.
9. Keep evolving as a business as if you stand still you will slowly die.
10. Try new stuff. It may well work. If it does, do more of it.
Overall, this is a superb book that I found myself actually slowing down on whilst I was reading it so I wouldn't finish it too quick.
Brilliant, just brilliant. You can buy your very own copy (and I urge you to do so, by clicking here.
And finally, thanks to the rather excellent ViZZZual.com for use of his image.
Oh, and when you read it, look out for my new friend Rowena who is the very smiley one on the Banana phone in the front of the book. Hello.
I'm reading the rather excellent book about Inocent Smoothies called 'A Book About Innocent: Our Story and Some Things We've Learned' Which is absolutely excellent and really confirms many of our thoughts about how real branding works. There seems to be so much power in the detail that they take seriously that anyone in any industry can learn from reading this enjoyable book.
I'll write a full review in the next few days when I've finished it, but had to relay one of the brilliant stories in it.
Innocent often put 'joke' ingredients in their listings and on one, they added the odd ingredient of 'Two Plump Nuns'. This was designed to show their purity and innocence – a lovely and funny thought – but really not one to be taken too seriously – who would really be thinking there was bits of nun in it, plump or otherwise?
But not according to the Trading Standards people, who after some to-ing and fro-ing wrote them a letter that essentially said "either you add in two plump nuns to your smoothies, or take them off your ingredients list.
You can buy it here and I would absolutely recommend you do.
I bought a bottle of the superfruit smoothie today which was lovely and has a brilliant story about the bees knees on the side, so I thought I would write and let them know how much I enjoyed it and how much I was enjoying the book.
Thanks for your e-mail. Great to hear how much you're enjoying having a read of our book and the Plump Nuns story. Hope you like the rest of the book too.
Now I guess I was expecting a reply, but a personal one in 8 minutes is exceptional and the reason they are such a fabulous business ad a brand that any sensible business should envy and learn from. I am now a devoted fan!


Buoyed by Asian Development Bank's second tranche of $ 200 million to revamp the power scenario in the state, the power department has started negotiating with World Bank for more financial assistance. "Negotiations with the World Bank for a $ 400 million loan have reached an advanced stage," power minister Pradyut Bordoloi told the third Eastern Region Summit of Indian Electrical and Electronics Manufacturers' Association (IEEMA) here on Friday. "We have successfully utilized the amount that we took from the Asian Development Bank in reforming the power sector in the state. So, the bank has come forward with it second tranche of 200 million. Now, we are very close in clinching the 400 million loan from the World Bank," Bordoloi said. With the state power sector set to go for major improvement in days to come, the power minister has appealed to the Indian Electrical and Electronics Manufacturers' Association (IEEMA) to play a proactive role by bringing in cost-effective technologies and boost power generation in the northeast. IEEMA is the representative national organisation of manufacturers of electrical, professional electronics and allied equipment having over 550 members. The first phase of reforms in the state power sector began since 2001. Assam State Electricity Board (ASEB) chairman S C Das said a perspective plan envisaged an investment of Rs 3,000 crore for transmission and Rs 1,600 crore for distribution in the next few years. The power scenario is set for improvement within five years with a number of power projects coming up in the northeast. "The 750 MW thermal power project in Bongaigaon, the gas-based project at Palatana in Tripura, the 1,200 MW Subansiri hydel project in Arunachal Pradesh, the 500 MW coal-based project in Margherita and the 150 MW hydro-project in Karbi Anglong will significantly contribute to the state's power scenario," the ASEB chairman said. "The peak power demand has increased from 550 MW in 2001 to about 1,100 MW at present. If we take the suppressed demand into consideration, then it will range between 1,300 MW and 1,400 MW. Our consumer base is also set to increase from 18 lakh at present to about 30 lakh by March 2012. This can be possible by providing BPL families greater access to electricity," Das added. IEEMA president Vimal Mahendru said their Northeast Vision 2020 "calls for healthy investment in the power sector because of the region's immense hydro-power potentiality".
"Since the power sector reforms began, ASEB has been able to pay all outstanding. Today, we have no liabilities. Even our aggregate transmission and cost loss of power have been brought down to 30 per cent from 45 per cent," Das said.


Employee training schedule template is one of the most important templates which is used by the human resource section of the company, as there are many functions of HR, so training is also the responsibility of this department, As an HR personnel, he is required to rearrange an assortment of errands of the employees. Your obligations could incorporate with everything from obtaining the best ability to rousing the worker's morale to overseeing preparing programs in any organization. Almost every personnel need the training to meet the standard of the organization. Many multinational companies MNC's have set their schedule many times a year it is also hierarchy wise, the upper-level management is going to receive training outside of the country, they enjoy both the trip as well as training so this is all the duty and responsibility HR Department of the company.
With such a critical number of different commitments of this division in this employee training schedule template, it is basic to have a structure set up according to company structure and to stay made and ensure that no detail is left settled it suggests each one of the parts of getting ready is cover and is under the control of the schedule. One of the best ways to deal with the screen each one of the purposes of intrigue is by using an Excel template. Companies also asked about the best Excel formats for HR and have included the schedule to them here for you to download, nearby a depiction of when to use each. And now this template made the work easy and has following advantages.
In it, we write the business name and also write the purpose of the training.
In this section, the names of the department are written and purpose and type of training is mention so that the selected employee get training according to the schedule.
This section covers the lower level employees, their training on the job & off the job and its time and place is mention.
Beside all employee training schedule template is very important and is used globally in almost all the firms.


text:
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="DataSourceManagerImpl" format="xml" hash="222222634">
    <data-source source="LOCAL" name="Rails VoterApp: development" uuid="b63e78f9-96fe-4cbe-aaea-dd68665c9037">
      <driver-ref>sqlite.xerial</driver-ref>
      <jdbc-driver>org.sqlite.JDBC</jdbc-driver>
      <jdbc-url>jdbc:sqlite:$PROJECT_DIR$/db/development.sqlite3</jdbc-url>
      <libraries />
    </data-source>
  </component>
</project>

redpajama_set_name: RedPajamaGithub


Here's a few chances to catch me this summer. I'm playing a private event here in Joshua Tree on July 14. Hit me up by email or if you run into me and I can tell you about that one. July 21, I play Landers Brew Company as a guest for Joe Garcia's Urban Desert Cabaret. And July 27, I'll be in Nevada City, California, playing with my long lost friend, Jonny Mac at The Ol' Republic. That one starts at 6pm.


text:
using System.Text;

namespace Equationator
{
	/// <summary>
	/// This is a single text token from an equation.
	/// The first step to compiling an equation is breaking it up into a list tokens and determining what is in those tokens.
	/// </summary>
	public class Token
	{
		#region Members

		/// <summary>
		/// Gets the token text.
		/// </summary>
		/// <value>The token text.</value>
		public string TokenText { get; private set; }

		/// <summary>
		/// Gets the type of token.
		/// </summary>
		/// <value>The type of token.</value>
		public TokenType TypeOfToken { get; private set; }

		#endregion Members

		#region Methods

		/// <summary>
		/// Initializes a new instance of the <see cref="Equationator.Token"/> class.
		/// </summary>
		public Token()
		{
			TypeOfToken = TokenType.Invalid;
		}

		/// <summary>
		/// Pull one token out of a string.
		/// </summary>
		/// <returns>int: the new current index in the string. Use this as the start point for parsing the next token</returns>
		/// <param name="strEquationText">The full text string we are tokenizing</param>
		/// <param name="iStartIndex">The character index in the string where to start tokenizing</param>
		public int ParseToken(string strEquationText, int iStartIndex)
		{
			//Walk through the text and try to parse it out into an expression
			while (iStartIndex < strEquationText.Length)
			{
				//First check if we are reading in a number
				if (IsNumberCharacter(strEquationText, iStartIndex))
				{
					//read a number and return the new index
					return ParseNumberToken(strEquationText, iStartIndex);
				}
				else if (IsOperatorCharacter(strEquationText, iStartIndex))
				{
					//We found an operator value...
					TypeOfToken = TokenType.Operator;
					TokenText = strEquationText[iStartIndex].ToString();
					return ++iStartIndex;
				}

				switch (strEquationText[iStartIndex])
				{
					case '$':
						{
							//read a function/param and return the new index
							return ParseFunctionToken(strEquationText, iStartIndex);
						}
					case '(':
						{
							//we found an open paren!
							TypeOfToken = TokenType.OpenParen;
							TokenText = strEquationText[iStartIndex].ToString();
							return ++iStartIndex;
						}
					case ')':
						{
							//we found a close paren!
							TypeOfToken = TokenType.CloseParen;
							TokenText = strEquationText[iStartIndex].ToString();
							return ++iStartIndex;
						}
					case 'x':
						{
							//We are going to cheat and use 'x' as $1
							return ParamCheat("1", iStartIndex);
						}
					case 'y':
						{
							//We are going to cheat and use 'x' as $2
							return ParamCheat("2", iStartIndex);
						}
					case 'z':
						{
							//We are going to cheat and use 'x' as $3
							return ParamCheat("3", iStartIndex);
						}
				}

				//We found some white space
				iStartIndex++;
			}

			return iStartIndex;
		}

		/// <summary>
		/// Our token is a number, parse the full text out of the expression
		/// </summary>
		/// <returns>The index in the string after our number</returns>
		/// <param name="strEquationText">String equation text.</param>
		/// <param name="iIndex">start index of this token.</param>
		private int ParseNumberToken(string strEquationText, int iIndex)
		{
			//Set this token as a number
			TypeOfToken = TokenType.Number;

			//Parse the string into a number
			StringBuilder word = new StringBuilder();
			while (IsNumberCharacter(strEquationText, iIndex))
			{
				//Add the digit/decimal to the end of the number
				word.Append(strEquationText[iIndex++]);

				//If we have reached the end of the text, quit reading
				if (iIndex >= strEquationText.Length)
				{
					break;
				}
			}

			//grab the resulting value and return the new string index
			TokenText = word.ToString();
			return iIndex;
		}

		private int ParseFunctionToken(string strEquationText, int iIndex)
		{
			//first, skip the dollar sign
			iIndex++;

			//check if it is a param or a function call
			StringBuilder word = new StringBuilder();
			if (strEquationText[iIndex] >= '0' && strEquationText[iIndex] <= '9')
			{
				//We have a param value
				TypeOfToken = TokenType.Param;

				//Parse the param until we hit the end
				while (strEquationText[iIndex] >= '0' && strEquationText[iIndex] <= '9')
				{
					word.Append(strEquationText[iIndex++]);

					//If we have reached the end of the text, quit reading
					if (iIndex >= strEquationText.Length)
					{
						break;
					}
				}
			}
			else
			{
				//TODO: Parse the function call until we hit the next token

				//Get the function name
				string funcName = strEquationText.Substring(iIndex, 4);

				//We have a function call
				TypeOfToken = TokenType.Function;

				//check if the token is stored in our grammar dictionary
				word.Append(funcName);
				iIndex += 4;
			}

			//grab the resulting value and return the new string index
			TokenText = word.ToString();
			return iIndex;
		}

		private int ParamCheat(string param, int iIndex)
		{
			TypeOfToken = TokenType.Param;
			TokenText = param;
			return ++iIndex;

		}

		/// <summary>
		/// Check whether the character at an index is a number
		/// </summary>
		/// <returns><c>true</c> if this instance is number character the specified strEquationText iIndex; otherwise, <c>false</c>.</returns>
		/// <param name="strEquationText">String equation text.</param>
		/// <param name="iIndex">I index.</param>
		static private bool IsNumberCharacter(string strEquationText, int iIndex)
		{
			return (('0' <= strEquationText[iIndex] && strEquationText[iIndex] <= '9') || strEquationText[iIndex] == '.');
		}

		/// <summary>
		/// Check whether the character at an index is an operator character
		/// </summary>
		/// <returns><c>true</c> if this instance is number character the specified strEquationText iIndex; otherwise, <c>false</c>.</returns>
		/// <param name="strEquationText">String equation text.</param>
		/// <param name="iIndex">I index.</param>
		static private bool IsOperatorCharacter(string strEquationText, int iIndex)
		{
			switch (strEquationText[iIndex])
			{
				case '*': return true;
				case '/': return true;
				case '+': return true;
				case '-': return true;
				case '^': return true;
				case '%': return true;
			}
			return false;
		}

		#endregion Methods
	}
}


text:
package org.redisson.codec;

import java.io.IOException;
import java.nio.ByteBuffer;

import org.redisson.client.codec.BaseCodec;
import org.redisson.client.codec.Codec;
import org.redisson.client.handler.State;
import org.redisson.client.protocol.Decoder;
import org.redisson.client.protocol.Encoder;

import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import net.jpountz.lz4.LZ4Compressor;
import net.jpountz.lz4.LZ4Factory;
import net.jpountz.lz4.LZ4SafeDecompressor;

/**
 * LZ4 compression codec.
 * Uses inner Codec to convert object to binary stream.
 * MarshallingCodec used by default.
 *
 * Fully thread-safe.
 *
 * https://github.com/jpountz/lz4-java
 *
 * @see org.redisson.codec.MarshallingCodec
 *
 * @author Nikita Koksharov
 *
 */
public class LZ4Codec extends BaseCodec {

    private static final int DECOMPRESSION_HEADER_SIZE = Integer.SIZE / 8;
    private final LZ4Factory factory = LZ4Factory.fastestInstance();

    private final Codec innerCodec;

    public LZ4Codec() {
        this(new MarshallingCodec());
    }

    public LZ4Codec(Codec innerCodec) {
        this.innerCodec = innerCodec;
    }

    public LZ4Codec(ClassLoader classLoader) {
        this(new MarshallingCodec(classLoader));
    }

    public LZ4Codec(ClassLoader classLoader, LZ4Codec codec) throws ReflectiveOperationException {
        this(copy(classLoader, codec.innerCodec));
    }

    private final Decoder<Object> decoder = new Decoder<Object>() {
        @Override
        public Object decode(ByteBuf buf, State state) throws IOException {
            int decompressSize = buf.readInt();
            ByteBuf out = ByteBufAllocator.DEFAULT.buffer(decompressSize);
            try {
                LZ4SafeDecompressor decompressor = factory.safeDecompressor();
                ByteBuffer outBuffer = out.internalNioBuffer(out.writerIndex(), out.writableBytes());
                int pos = outBuffer.position();
                decompressor.decompress(buf.internalNioBuffer(buf.readerIndex(), buf.readableBytes()), outBuffer);
                int compressedLength = outBuffer.position() - pos;
                out.writerIndex(compressedLength);
                return innerCodec.getValueDecoder().decode(out, state);
            } finally {
                out.release();
            }
        }
    };

    private final Encoder encoder = new Encoder() {

        @Override
        public ByteBuf encode(Object in) throws IOException {
            ByteBuf bytes = null;
            try {
                LZ4Compressor compressor = factory.fastCompressor();
                bytes = innerCodec.getValueEncoder().encode(in);
                ByteBuffer srcBuf = bytes.internalNioBuffer(bytes.readerIndex(), bytes.readableBytes());

                int outMaxLength = compressor.maxCompressedLength(bytes.readableBytes());
                ByteBuf out = ByteBufAllocator.DEFAULT.buffer(outMaxLength + DECOMPRESSION_HEADER_SIZE);
                out.writeInt(bytes.readableBytes());
                ByteBuffer outBuf = out.internalNioBuffer(out.writerIndex(), out.writableBytes());
                int pos = outBuf.position();

                compressor.compress(srcBuf, outBuf);

                int compressedLength = outBuf.position() - pos;
                out.writerIndex(out.writerIndex() + compressedLength);
                return out;
            } finally {
                if (bytes != null) {
                    bytes.release();
                }
            }
        }
    };

    @Override
    public Decoder<Object> getValueDecoder() {
        return decoder;
    }

    @Override
    public Encoder getValueEncoder() {
        return encoder;
    }

}


text:
[Telegram Chat] - 𝐓𝐔𝐌𝐔𝐋𝐓𝐔𝐎𝐔𝐒 𝐏𝐑𝐄𝐏 𝐅𝐎𝐑 𝐒𝐔𝐙𝐔𝐊𝐈 𝐂𝐔𝐏
By Po Hui December 03, 2021
An IG poll was conducted to see how many noticed this poster There is some marketing buzz going on for the upcoming AFF Suzuki Cup though I am not sure how many noticed this banner while strolling along this busy walkway of Bishan MRT station? Not that far away from this station is Bishan Stadium - the venue for most of the Group B matches. One thing to take note of is the stadium is installed with a new natural grass surface (picture below) which I had a look at recently from the nearby Bishan Sports Hall. Being a surface that was only laid not that long ago, not sure if it is able to withstand the robustness of the team like the Vietnamese who are known for their pace. (maybe someone with some horticultural knowledge can answer that)? Will Vietnam thrive on this new surface? In the meantime, the delay in the announcement of the ticketing and broadcasting details caused some anxieties among the local fans during the run-up to the biennial showpiece. Yet when the ticketing details we
[Telegram Chat] - 𝐆𝐄𝐓𝐓𝐈𝐍𝐆 𝐓𝐇𝐄 𝐑𝐈𝐆𝐇𝐓 𝐈𝐍𝐆𝐑𝐄𝐃𝐈𝐄𝐍𝐓𝐒?
By Ko Po Hui November 21, 2021
The name is fixed? (created using meme generator ) After months of anticipation, we are given some updates on the Unleash The Roar! (UTR!) project days ago. When I first read about it, my main concern would be the sustainability of those ten School Football Academies (SFAs) schools (ie: resources like financial, manpower, etc.) which are the cornerstones of the update. Are we getting full support from the Ministry of Education (MOE) on the setting up of these SFA schools? Let's hope so, especially it seems to me past blueprints like "Goal 2010" did not have the backing of the educators. Besides MOE who must wholeheartedly support the "SFA" concept, I think to convince the parents of this UTR! is a viable project is equally important too. Parentage support is important to UTR! While it seems that the UTR! received a booster with Borussia Dortmund (BvB) and LaLiga coming on board as strategic partners , there are concerns of the roles to be played by them wh
"Matchpix" - Oct 2021
AFC U23 Qualifiers - Philippines 0-1 Singapore 281021 "Hey, ref! Look!" A wondering strike from outside the box by Glenn Kweh was enough to keep Singapore U22's hopes alive in the ongoing AFC U-23 Asian Cup qualifier, as the Cubs beat the Philippines 1-0 last evening(28/10). The 21-year-old took his chance well before unleashing a piledriver with his left foot in the 51st minute to spark celebrations among the crowds at the Jalan Besar Stadium. It was Kweh's second goal of the campaign after he scored the first goal in the Cubs' opener against Timor Leste. PLEASE CLICK HERE TO SEE THE REST OF THE MATCH PICTURES AFC U23 Qualifiers - South Korea 5-1 Singapore 311021 Nur Adam scored the consolation against the Koreans The match against their South Korean counterparts was almost like a dead rubber for the Singapore U22 squad, after the preceding tie saw Timor-Leste beat the Philippines in the AFC U23 Asian Cup Qualifiers last evening (31/10) at the JBS. It all got
[Telegram Chat] - 𝐈𝐍𝐍𝐎𝐕𝐀𝐓𝐄, 𝐈𝐍𝐒𝐓𝐄𝐀𝐃 𝐎𝐅 𝐒𝐈𝐓𝐓𝐈𝐍𝐆 𝐃𝐎𝐖𝐍 𝐓𝐇𝐄𝐑𝐄
By Po Hui November 02, 2021
Lion City Sailors - 2021 SPL champions (credit: FAS) 😶 It is not unusual to see transfer speculations surfaced right after the season is over, and already we read about newly-minted champions Lion City Sailors (pictured, credited FAS) linked to several high profile foreign players in their bid to assemble a squad capable to put up a decent performance in next season's AFC Champions League (ACL). ❌ Nothing wrong with that, especially we wouldn't want to see a repeat of that woeful Tampines Rovers' ACL campaign that eventually led to a premature end of their SPL title campaign. 💰 And more importantly, we know the financial muscles of the Sailors and some detractors of theirs are worrying they have already begun to turn SPL into a one-horse race. LCS Coach Kim Do-hoon won the ACL in 2020 (issued by LCS) 🔍The challenge will be in what way the rest of the league can innovate in other means besides money to complete with Sailors, rather than sit at one corner to lick
Preserving The Legacy of Those Who Toiled For Singapore Football
By Ko Po Hui October 20, 2021
People of my generation might have heard of him, but were too young to realize who he was when he was playing. Let alone those millennials or Generation Z who might think "Mat Noh" is just a random name of someone around them. It is something we cannot pinpoint at anyone if many young people these days have not heard the names of Mat Noh and his contemporaries who wowed this island republic in the 1970s. 1977 Singapore National Team is still revered by many till today Simply because many former players have stayed out of the media limelight after they hung up their boots that it is no surprise, some might not realize who are they if they happened to stand in front or next to a former national player. SAD THAT ONLY REALIZED WHO THEY WERE WHEN THEY GONE It is a sad thing that whenever former star players like Mat Noh passed away, we only get to read articles in the newspapers and discussions on social media reminiscing the achievements they had in their heydays, other than th

redpajama_set_name: RedPajamaCommonCrawl


text:
// ======================================================================== //
// Copyright 2009-2013 Intel Corporation                                    //
//                                                                          //
// Licensed under the Apache License, Version 2.0 (the "License");          //
// you may not use this file except in compliance with the License.         //
// You may obtain a copy of the License at                                  //
//                                                                          //
//     http://www.apache.org/licenses/LICENSE-2.0                           //
//                                                                          //
// Unless required by applicable law or agreed to in writing, software      //
// distributed under the License is distributed on an "AS IS" BASIS,        //
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. //
// See the License for the specific language governing permissions and      //
// limitations under the License.                                           //
// ======================================================================== //

#ifndef __EMBREE_NATIVE_DEVICE_H__
#define __EMBREE_NATIVE_DEVICE_H__

#include <stddef.h>
#include "device_singleray/dataconnector.h"

/*! \file api.h This file implements the interface to the renderer
 *  backend. The library has to get initialized by calling rtInit() at
 *  the beginning and rtExit() at the end of your application. The API
 *  is completely functional, meaning that objects can NOT be
 *  modified. Handles are references to objects, and objects are
 *  internally reference counted, thus destroyed when no longer
 *  needed. Calling rtDelete does only delete the handle, not the
 *  object the handle references. The first parameter of every
 *  rtNewXXX function is a type that selects the object to create. For
 *  an overview of the parameters supported by a specific object see
 *  the header file of the object implementation. Using the rtSetXXX
 *  functions buffers the set values inside the handle. A subsequent
 *  call to rtCommit will set the handle reference to a new object
 *  with the changed parameters. The original object is not changed by
 *  this process. The semantics of modifying an object A used by
 *  another object B can only be achieved by creating A' and a new B'
 *  that uses A'. The RTImage, RTFramebuffer, and RTScene handles are
 *  constant, thus the rtSetXXX and rtCommit function cannot be used
 *  for them. */

namespace embree
{
  /*******************************************************************
                           Embree Device
  *******************************************************************/
  typedef int light_mask_t;

  class Device
  {
  public:
    virtual ~Device() {}

    /*! Create new Embree device. */
    static Device* rtCreateDevice(const char* type = "default", size_t numThreads = 0, const char* rtcore_cfg = "");

    /*******************************************************************
                        type definitions
    *******************************************************************/

    /*! Generic handle. */
    typedef struct __RTHandle {}* RTHandle;

    /*! Transformation handle. */
    typedef struct __RTTransform : public __RTHandle { }* RTTransform;

    /*! Camera handle. */
    typedef struct __RTCamera : public __RTHandle { }* RTCamera;

    /*! Data handle (constant). */
    typedef struct __RTData : public __RTHandle { }* RTData;

    /*! Image handle (constant). */
    typedef struct __RTImage : public __RTHandle { }* RTImage;

    /*! Texture handle. */
    typedef struct __RTTexture : public __RTHandle { }* RTTexture;

    /*! Material handle. */
    typedef struct __RTMaterial : public __RTHandle { }* RTMaterial;

    /*! Shape handle. */
    typedef struct __RTShape : public __RTHandle { }* RTShape;

    /*! Light handle. */
    typedef struct __RTLight : public __RTHandle { }* RTLight;

    /*! Primitive handle. */
    typedef struct __RTPrimitive : public __RTHandle { }* RTPrimitive;

    /*! Scene handle (constant). */
    typedef struct __RTScene : public __RTHandle { }* RTScene;

    /*! Tonemapper handle. */
    typedef struct __RTToneMapper : public __RTHandle { }* RTToneMapper;

    /*! Renderer handle. */
    typedef struct __RTRenderer : public __RTHandle { }* RTRenderer;

    /*! Framebuffer handle (constant). */
    typedef struct __RTFrameBuffer : public __RTHandle { }* RTFrameBuffer;

    /*! Ray structure. Describes ray layout for ray queries. */
    struct RTRay {
      struct vec3 { float x,y,z; };
      vec3 org;   //!< origin of ray
      float near; //!< start of ray segment
      vec3 dir;   //!< direction of ray
      float far;  //!< end of ray segment
    };

    /*! Hit structure. Describes hit layout for ray queries. */
    struct RTHit {
      int prim;    //!< ID of hit primitive
      float dist;  //!< distance of hit
    };

	DataConnector* dataConnector = NULL;

    /*******************************************************************
                         creation of objects
    *******************************************************************/

    /*! Creates a new camera. \param type is the type of camera to
     *  create (e.g. "pinhole"). \returns camera handle. */
    virtual RTCamera rtNewCamera(const char* type) = 0;

    /*! Creates a new data object. \param type is the type of the data
     *  buffer, can be "immutable" (constant buffer and data gets copied
     *  on construction) or "immutable_managed" (constant buffer but
     *  provided data will be deleted by the system using free). \param
     *  bytes is the number of bytes for the data buffer \param data is
     *  the data to fill the buffer with. \returns data buffer handle */
    virtual RTData rtNewData(const char* type, size_t bytes, const void* data) = 0;

    /*! Creates a new data object and initializes its content from a
     *  file. \param type is the type of the data buffer, can only be
     *  "immutable" (constant buffer). \param file is the name of the
     *  file to open. If the filename starts with "server:" the data
     *  is loaded directly on the rendering servers in network
     *  mode. \param offset is the location on the file to start
     *  reading \param bytes is the number of bytes for the data
     *  buffer. \returns data buffer handle */
    virtual RTData rtNewDataFromFile(const char* type, const char* file, size_t offset, size_t bytes) = 0;

    /*! Creates a new image. The data gets directly copied by this
     *  function. \param type is the type of image to create
     *  (e.g. "RGB8", "RGB_FLOAT32"). \param width is the width of the
     *  image \param height is the height of the image \param data is a
     *  pointer to the image data. \returns image handle */
    virtual RTImage rtNewImage(const char* type, size_t width, size_t height, const void* data, const bool copy = true) = 0;

    /*! Creates a new image from a file. \param file is the file to
     *  read the image from. If the filename starts with "server:" the
     *  image is loaded directly on rendering servers in network
     *  mode. \returns image handle */
    virtual RTImage rtNewImageFromFile(const char* file) = 0;

    /*! Creates a texture. \param type is the type of texture to create
     *  (e.g. "image" mapped). \returns texture handle */
    virtual RTTexture rtNewTexture(const char* type) = 0;

    /*! Creates a new material. \param type is the type of material to
     *  create (e.g. "Matte", "Plastic", "Dielectric", "ThinDielectric",
     *  "Mirror", "Metal", "MetallicPaint", "MatteTextured",
     *  "Obj"). \returns material handle */
    virtual RTMaterial rtNewMaterial(const char* type) = 0;

      /*! Creates a new shape. \param type is the type of shape to create
       *  (e.g. "trianglemesh", "triangle", "sphere") \returns shape
       *  handle */
    virtual RTShape rtNewShape(const char* type) = 0;

    /*! Creates a new light source. \param type is the type of shape to
     *  create (e.g. "ambientlight", "pointlight", "spotlight",
     *  "directionallight", "distantlight", "hdrilight",
     *  "trianglelight"). \returns light handle */
    virtual RTLight rtNewLight(const char* type) = 0;

    /*! Creates a new shape primitive. \param shape is the shape to
     *  instantiate \param material is the material to attach to the
     *  shape \param transform is an optional pointer to a
     *  transformation to transform the shape \returns primitive
     *  handle */
    virtual RTPrimitive rtNewShapePrimitive(RTShape shape, RTMaterial material, const float* transform = NULL) = 0;

    /*! Creates a new light primitive. \param light is the light to
     *  instantiate \param transform is an optional pointer to a
     *  transformation to transform the shape \returns primitive
     *  handle */
    virtual RTPrimitive rtNewLightPrimitive(RTLight light, RTMaterial material, const float* transform = NULL) = 0;

    /*! Transforms a primitive. \param prim is the primitive to
     *  transform \param transform is a pointer to a
     *  transformation \returns primitive
     *  handle */
    virtual RTPrimitive rtTransformPrimitive(RTPrimitive prim, const float* transform) = 0;

    /*! Creates a new scene. \returns scene handle */
    virtual RTScene rtNewScene(const char* type) = 0;

    /*! Adds or deletes a primitive to/from the scene. Primitives are
        deleted by adding NULL to a primitive slot. */
    virtual void rtSetPrimitive(RTScene scene, size_t slot, RTPrimitive prim) = 0;

    /*! Creates a new tonemapper. \returns tonemapper handle. */
    virtual RTToneMapper rtNewToneMapper(const char* type) = 0;

    /*! Creates a new renderer. \param type is the type of renderer to
     *  create (e.g. "debug", "pathtracer"). \returns renderer handle */
    virtual RTRenderer rtNewRenderer(const char* type) = 0;

    /*! Creates a new framebuffer. \param type is the type of
     *  framebuffer to create (e.g. "RGB_FLOAT32"). \param width is
     *  the width of the framebuffer in pixels \param height is the
     *  height of the framebuffer in pixels \param iteration is the
     *  current iteration for this frame buffer \param buffers are the
     *  number of buffers for multi-buffering \returns framebuffer
     *  handle */
    virtual RTFrameBuffer rtNewFrameBuffer(const char* type, size_t width, size_t height, size_t buffers = 1, void** ptrs = NULL) = 0;

    /*! Map the framebuffer data. \param frameBuffer is the framebuffer
     *  to map \returns pointer to framebuffer data */
    virtual void* rtMapFrameBuffer(RTFrameBuffer frameBuffer, int bufID = -1) = 0;

    /*! Unmap the framebuffer data. \param frameBuffer is the
     *  framebuffer to unmap. */
    virtual void rtUnmapFrameBuffer(RTFrameBuffer frameBuffer, int bufID = -1) = 0;

    /*! Switch to the next buffer in the chain. */
    virtual void rtSwapBuffers(RTFrameBuffer frameBuffer) = 0;

    /*! Increases the reference counter of the handle. */
    virtual void rtIncRef(RTHandle handle) = 0;

    /*! Decreases the reference counter of the handle. If zero is reached
        the handle is destroyed, but not necessarily the referenced object. */
    virtual void rtDecRef(RTHandle handle) = 0;

    /*******************************************************************
                            setting of parameters
    *******************************************************************/

    /*! Sets a boolean parameter of the handle. */
    virtual void rtSetBool1(RTHandle handle, const char* property, bool x) = 0;

    /*! Sets a bool2 parameter of the handle. */
    virtual void rtSetBool2(RTHandle handle, const char* property, bool x, bool y) = 0;

    /*! Sets a bool3 parameter of the handle. */
    virtual void rtSetBool3(RTHandle handle, const char* property, bool x, bool y, bool z) = 0;

    /*! Sets a bool4 parameter of the handle. */
    virtual void rtSetBool4(RTHandle handle, const char* property, bool x, bool y, bool z, bool w) = 0;

    /*! Sets an integer parameter of the handle. */
    virtual void rtSetInt1(RTHandle handle, const char* property, int x) = 0;

    /*! Sets an int2 parameter of the handle. */
    virtual void rtSetInt2(RTHandle handle, const char* property, int x, int y) = 0;

    /*! Sets an int3 parameter of the handle. */
    virtual void rtSetInt3(RTHandle handle, const char* property, int x, int y, int z) = 0;

    /*! Sets an int4 parameter of the handle. */
    virtual void rtSetInt4(RTHandle handle, const char* property, int x, int y, int z, int w) = 0;

    /*! Sets a float parameter of the handle. */
    virtual void rtSetFloat1(RTHandle handle, const char* property, float x) = 0;

    /*! Sets a float2 parameter of the handle. */
    virtual void rtSetFloat2(RTHandle handle, const char* property, float x, float y) = 0;

    /*! Sets a float3 parameter of the handle. */
    virtual void rtSetFloat3(RTHandle handle, const char* property, float x, float y, float z) = 0;

    /*! Sets a float4 parameter of the handle. */
    virtual void rtSetFloat4(RTHandle handle, const char* property, float x, float y, float z, float w) = 0;

    /*! Sets an typed array parameter of the handle. The data is copied when calling rtCommit. */
    virtual void rtSetArray(RTHandle handle, const char* property, const char* type, RTData data, size_t size, size_t stride, size_t ofs) = 0;

    /*! Sets a string parameter of the handle. */
    virtual void rtSetString(RTHandle handle, const char* property, const char* str) = 0;

    /*! Sets an image parameter of the handle. */
    virtual void rtSetImage(RTHandle handle, const char* property, RTImage img) = 0;

    /*! Sets a texture parameter of the handle. */
    virtual void rtSetTexture(RTHandle handle, const char* property, RTTexture tex) = 0;

    /*! Sets a transformation of the handle. */
    virtual void rtSetTransform(RTHandle handle, const char* property, const float* transform) = 0;

    /*! Clear all parameters cached in the handle to reduce memory
     *  consumption. For instance, mesh handles no longer reference data
     *  buffers passed at creation time. */
    virtual void rtClear(RTHandle handle) = 0;

    /*! Commits all changes by setting the reference of the handle to a
     *  new object with specified parameters. */
    virtual void rtCommit(RTHandle handle) = 0;

	  void SetDataConnector(DataConnector* dataConnector) {
		  this->dataConnector = dataConnector;
	  }

    /*******************************************************************
                            render calls
    *******************************************************************/

    /*! Renders a frame. \param renderer is the renderer to use \param
     *  camera is the camera to use \param scene is the scene to
     *  render \param tonemapper is the tonemapper to use \parm
     *  frameBuffer is the framebuffer to render into */
    virtual void rtRenderFrame(RTRenderer renderer, RTCamera camera, RTScene scene, RTToneMapper tonemapper, RTFrameBuffer frameBuffer, int accumulate, bool datacallback) = 0;

    /*! Pick a 3D point. \returns true if a point was picked, false otherwise
     *  \parm x is the x coordinate [0:1] in the image plane
     *  \parm y is the y coordinate [0:1] in the image plane
     *  \parm p is the world space position of the picked point, if any
     *  \parm camera is the camera to use \param scene is the scene for picking */
    virtual bool rtPick(RTCamera camera, float x, float y, RTScene scene, float& px, float& py, float& pz) = 0;
  };
}

#endif


text:
SirCam worm goes global
It's a little like comparing apples to oranges, but there are two very active worms currently spreading across the Internet.
By Robert Vamosi | August 10, 2001 -- 03:36 GMT (20:36 PDT) | Topic: Security
While network administrators battle the Code Red worm, PC users around the world are contending with increasing reports of the prevalent SirCam worm. According to Dave White of the antivirus software company MessageLabs, SirCam is unlike any virus to date because of its ability to evade most realtime virus scanners. Its polymorphic nature goes undetected. "It isn't instantly recognizable," he said.
There's also a degree of social engineering at work as well--since the attachment changes randomly, some people are honestly duped into opening it, thinking it's legit. White said that the virus may be spreading more quickly because a lot of people have been on vacation during the end of July, haven't heard of SirCam, and are only now returning to work and innocently opening their e-mail.
MessageLabs had predicted a minor bump in SirCam infections for Monday, July 30, however, the number of infections reported to site actually peaked the following day, on Tuesday, July 31. More important, the number of infections reported on July 31 was higher than the number reported the previous Tuesday, when SirCam was thought to have peaked. Overall, MessageLabs has reported more viruses from its users during the month of July than ever before--compare 140,000 infections to the previous record of 90,000.
With SirCam, "we have seen no sign of a drop-off," said White, whose lab had predicted the worm would be contained sometime this week. He hesitated this morning to speculate when the SirCam virus might begin to die out. "It's been reported in every country," he added. Currently, SirCam is MessageLabs' number one virus, easily outdistancing past champions, Magistr and Hybris.
One reason for SirCam's continued success might be that it isn't limited to e-mail; it is also a "network-aware" worm. For example, a shared file on a corporate network can become infected with SirCam and infect any other computers that access that file. "We're seeing a lot of infections from major corporations," said White. Since SirCam chooses its attachments randomly from infected hard drives, there have been reports of "sensitive documents" leaking out into the world.
Joe Hartman of Trend Micro agreed. Once SirCam is on a networked system, it becomes an IT nightmare. Just cleaning it off one machine isn't enough. "You have to find which machine is infecting the network, or you'll continue to re-infect your machines."
SirCam is destructive. There's a one in fifty chance that an infected computer will either have its hard drive erased or completely filled with garbage on October 16th. MessageLabs' White declined to speculate why the virus writer chose to do this. It might "just be scaremongering--'look at at what I can do.'" Given the spread of SirCam, the problem would be much worse than it currently is if it had been destructive each time, White said.
More from Robert Vamosi
FBI warns of new Storm worm variant
Google's Blogger number one for malware
Microsoft fixes DNS flaw but warns of Word attacks
iPhone: Google Talk, new security threats


Modern Tire and Auto Service provides 127,500 Mile Service services to Rocky Hill, CT, Shelton, CT, Newington, CT, and other surrounding areas.
Modern Tire and Auto Service is the leading 127,500 mile service shop in Rocky Hill, CT, Shelton, CT, and Newington, CT. We pride ourselves on ensuring that your vehicle is running at its optimal performance level. The safety of you and your family is our top priority. Due to the conditions in the Shelton, CT area it is important that the Preventative Maintenance be performed at the recommended level. At the 127,500 Mile Service Interval the Vehicle Manufacturers require certain safety inspections and preventative maintenance. Our trained mechanics focus on only performing the services and repairs your vehicle requires, the safety of you and your family, keeping your vehicle running at its top performance, and ensuring that your factory warranty stays intact. We are able to bring you the highest level of service and properly maintain your vehicle at a fraction of what a dealer would charge.
Replace Engine Oil and Filter – Due to the climate in the Shelton, CT area Vehicle Manufacturers consider us to be in harsh driving conditions. They require more frequent Oil and Filter changes. Routinely changing your vehicle's engine oil per the manufacture's guidelines is an essential part of properly maintaining your vehicle and keeping its warranty intact. The oil keeps the internal components of the engine lubricated and the filter collects any debris from causing any damage. This is an essential routine maintenance item to ensure performance and longevity of your vehicle.


text:
Q: What's the accurate dataset for text classification of tntsearch package I have found a package for text classification in PHP in which the method for the classifier accepts the sentence and the category like this:
$classifier->learn('that was a clean election', 'not sports');
$classifier->learn('that was a nice game','sports');

$classifier->guess('the game was bad');
// returns sports

What dataset is best for this approach?
And also I have a dynamic category which means I can add additional category. My problem is I have to give examples in every category added, which means I need more data in this category.

A:
There are a lot of datasets for this purpose, in this paper there
  is detailed Information about the Major ones, I linked in the following:

*

*DBpediaOntologyClassification

*AmazonReviewSentimentAnalysis

*Yahoo! AnswersTopicClassification

*AG News Categorization in English

redpajama_set_name: RedPajamaStackExchange


ROME, Oct 9 (Reuters) - Some Italian banks may be forced to tap investors for cash if the risk that premium domestic bonds pay over safer German Bunds rises above certain levels, a top central bank official warned.
Market concerns over the fiscal profligacy of Italy's new anti-establishment government have driven the 10-year yield gap between Italy and Germany above 300 basis points, from 130 in mid-May before the new coalition's spending plans first leaked.
"There are (spread) levels that may force some banks to tap markets (for cash)," Bank of Italy Deputy Director General Luigi Federico Signorini told a parliamentary hearing.
Filling capital shortfalls could prove difficult for Italian lenders, which have come under heavy pressure due to their large holdings of domestic government bonds.
Credit Suisse analysts said on Monday a widening of the yield differential between Italian and German bonds above 400 basis points would not be sustainable and would trigger capital increases.
Italian lenders have tapped markets in recent years to fund a restructuring after a deep recession.
But weak profitability and growing uncertainty over the country's prospects could make it hard for them to lure investors despite extremely cheap market valuations.
Signorini also flagged the risk that banks face constraints in lending because the falling value of their government bond holdings erode their capital buffers.
"The falling value of the government bonds they hold impacts banks' capital levels. Above a certain threshold, it may hamper their ability to provide credit to the economy," he said.


text:
Les Cahiers de la Quinzaine est une revue bimensuelle française existant de 1900 à 1914,  fondée et dirigée par Charles Péguy ; sa périodicité, malgré son titre, fut irrégulière ; les œuvres et les articles qui y furent publiés suivaient une inspiration dreyfusarde. Ces cahiers offraient aux lecteurs tantôt des textes formant dossier sur les problèmes du temps : congrès socialistes, affaire Dreyfus, universités populaires, séparation des Églises et de l'État ; tantôt, un cahier était entièrement constitué par une œuvre d'un des auteurs que Péguy découvrit et lança, comme les frères Tharaud, André Suarès, Julien Benda ou Romain Rolland.

Historique

La revue, dont siège était au 8 rue de la Sorbonne à Paris, est créée le  ( de la ) par Charles Péguy. Elle comptera 238 numéros à sa disparition en  ( de la ), en raison de la guerre et de la mort de son créateur.

Elle a peu à peu évolué en une série d'œuvres littéraires, avec des auteurs tels que Romain Rolland ou André Suarès, sans oublier Charles Péguy lui-même puisque c'est surtout dans cette revue qu'est paru l'essentiel de ses œuvres, les essais Notre Jeunesse, Victor-Marie, comte Hugo et L'Argent.

Dans la revue paraîtra en feuilleton La Vie de Beethoven (1903) et, surtout, Jean-Christophe de Romain Rolland (1904-1912). Parmi les autres collaborateurs, on note des noms illustres, tels que Georges Clemenceau, Anatole France ou Jean Jaurès, mais encore d'éminentes personnalités de cette époque.

En 1907, Le Rouet d'ivoire, un roman d'Émile Moselly publié par les Cahiers, est finaliste du prix Goncourt.

Des ouvrages isolés de la période 1897-1899, antérieure à la fondation des Cahiers de la quinzaine, lui ont été rattachés a posteriori par Charles Péguy lui-même. Ils forment neuf Cahiers précurseurs.

L'équilibre financier de la revue fut toujours précaire : elle n'eut au plus que  (dont Alfred Dreyfus, le colonel Picquart, Léon Blum…).

Le fils du poète Charles Péguy, Marcel Péguy relanca Les Cahiers de la Quinzaine en 1930. Les comptes rendus des quatre premières réunions de Le Studio franco-russe ont été publiés sous forme d'un volume hors série intitulé Rencontres. Les sténogrammes suivants parurent en fascicules individuels un mois après chaque séance.

Notes et références

Voir aussi

Bibliographie
 La Vie littéraire en France en 1908, analyse et dépouillement des périodiques, tome III, Paris, 1986

Liens externes

 Les Cahiers sur le site Charles Péguy
 "Péguy et ses Cahiers de la Quinzaine", vidéo cultureGnum de Claire Daudin.

Revue littéraire en France
Presse bimensuelle disparue en France
Presse socialiste en France
Titre de presse créé en 1900
Titre de presse disparu en 1914

redpajama_set_name: RedPajamaWikipedia


text:
The Question of God: Sigmund Freud & C.S. Lewis
A thorough yet stimulating case that Freud, father of psychoanalysis, and Lewis, author and Oxford scholar, are exemplary representatives of their respective secular and spiritual belief systems. This two-part PBS program grew out of a quarter-century-old Harvard course taught by Armand M. Nicholi, in which the backgrounds of Freud and Lewis are compared and contrasted for formative experiences that drove one man toward a science-based atheism and the other away from atheism toward Christianity.
How do we find meaning and purpose in our lives? Is there a God? How do we reconcile conflicting claims of love and sexuality? How do we cope with the problem of suffering and the inevitability of death? This series addresses these issues, which preoccupy all thinking people today. The series will frame these issues in the eventful lives of two men who held diametrically opposed world views: Sigmund Freud and C.S. Lewis. Indexed version.
Directors: Catherine Tatge
Writers: Leslie Clark
Producers: Catherine Tatge, Dominique Lasseur
Format: Multiple Formats, Closed-captioned, Color, Widescreen, NTSC
Region: Region 1 (U.S. and Canada only. Read more about DVD formats.)
Studio: PBS
DVD Release Date: March 8, 2005
Average Customer Review: 4.1 out of 5 stars 34 customer reviews
ASIN: B00078XGQU
Amazon Best Sellers Rank: #94,958 in Movies & TV (See Top 100 in Movies & TV)
#1427 in Movies & TV > DVD > Faith & Spirituality
#4934 in Movies & TV > DVD > Documentary
#19893 in Movies & TV > DVD > Drama
The Third Force (The Psychology of Abraham Maslow)
Sociology of Religion: Contemporary Developments
Ego and Archetype (C. G. Jung Foundation Books Series)


For the first time since 2011, one of the 2024 European Capitals of Culture will once again be located in Estonia, and the Ministry of Culture and the Association of Estonian Cities on Wednesday announced a competition to determine which town or city will claim the title.
In 2024, a total of three European cities will hold the title — one in Austria, one in a European Free Trade Association (EFTA) member state, EU candidate country or potential candidate country, and one in Estonia, the ministry said in a press release.
According to Kadri Jauram, director of the Ministry of Culture's Foreign Relations Department, any Estonian town or city can apply to be chosen. "This is a competition where winning cannot be the only goal," she said. "The candidacy process will first and foremost provide cities with a good opportunity to raise the importance of culture as a binding agent between other spheres. This will all allow for the formulation of long-term goals, from urban planning and the allocation of investments to the involvement of communities in decision-making processes."
An initial selection will be made from among potential Estonian candidate cities by next October, and the final selection for Estonia's 2024 European Capital of Culture will be made in fall 2019. The decision will be made by an independent expert committee which may include up to two representatives named by Estonia.
Entry requirements for the competition and other necessary information can be found on the Ministry of Culture homepage.
Tallinn served as European Capital of Culture in 2011, a year which, among other events, included the 11th Youth Song and Dance Festival "The Land and the World" and the opening of the hangars of the Seaplane Harbour.


text:
Арбитраж трафика » Лучшие CPA партнерки » We're talking people who could drive vertically on two wheels
cheap canada goose sale slumping mike trout takes a day off with a stiff neck cheap canada goose sale
canada goose outlet Thus, one potential improvement is an opening up of the review process; however, Rooyen et al. Found in 1999 that opening up peer review did not have a significant effect on review quality, although it did increase the likelihood that reviewers would decline to participate. Considering that the resources of reviewers can oftentimes be stretched thin, the potential for driving away reviewers is important to consider. canada goose outlet
canada goose sale Two years later I was in Kona, the cannon went off, and I was on my way. THIS WAS MY FIRST OPEN WATER SWIM! And what a swim it was! I had a really crappy stoke. I know that now. Once upon a time, car companies like Hyundai had synchronized driving teams that were designed to blow your mind and remind you that even modest vehicle models could do amazing things in the right (well coordinated) hands. We're talking people who could drive vertically on two wheels while the passenger changed a tire on their side of the car (see 1:55 in this YouTube video). cheap canada goose http://www.cheapcanadagoose.com/ cheap canada goose These kind of signature moves haven't been just for fancy car commercials either, as evidenced by a team of Isuzu drivers who currently perform events around Australia.. canada goose sale
cheap canada goose outlet Night on Bald Mountain, an exciting tone poem, was featured in Walt Disney's classic movie, Fantasia, and has been heard in countless movie scores over the years, usually associated with mysterious and dark happenings. This will be Houston's premiere performance of March of the Gypsy Fiddler, written for piano, violin and cello together with a full symphony orchestra. Composer Mark O'Connor is classically trained. cheap canada goose outlet
canada goose clearance A magnificent game of a novel, one in which the brilliant postmodern contrivances actually add to the poignancy of its anguished Victorian characters. Charles Smithson is an amateur paleontologist living on the southwestern coast of England. Ernestina is his drearily upright fiancee. canada goose clearance
canada goose official website Lynell George is a journalist/essayist based in Los Angeles and an assistant professor of English at Loyola Marymount University. Weekly. She is a member of PEN/West and is currently part of the Ms Magazine Blog Team. Off the meet market, goofing around can help you warm up to a new bud. In half of the pairs, the «teacher» held a canada goose sale straw in her teeth, which garbled her speech, and the «student» was blindfolded. Sounds more like S than science, but never mind that. canada goose official website
cheap canada goose jackets A mind map is a way of organizing your thoughts and ideas in a visual manner. Normally, a mind map starts with a central point or idea in the middle and then everything spreads out from there. Originally, mind maps were done with pen and paper. Tolkien's The Hobbit comes to a conclusion in a battle epic packed with enormous action sequences that oddly distract attention from the much more engaging central plotline. By the time it thunders to its satisfying conclusion after nearly two and a half hours, there's a sense of balance restored, providing some powerfully emotional moments along with the thrills. But there's a lot of chaotic mayhem to get through first cheap canada goose jackets.
Some investors will take control of the majority share of
«And if we don't look beyond him there is very little hope for
People are finding out that Home Based Business is more
Even though we know the freedom to marry is coming to Illinois


We have not mentioned Amagansett lately, and it's time to make up for that because there has been a flurry of year-end activity in the hamlet, including an eight-figure sale.
For $10.35 million, Irving Eli LLC is the new owner of 143 Marine Boulevard. On 0.84 acre is a house of 3,703 square feet that includes five bedrooms, five baths, views of the ocean from both floors, two living rooms—one upstairs and one down—and a huge oversized garage in the basement that can house up to four cars. There is also a detached two-car garage—in case the basement isn't enough—a semi-circular driveway that accommodates many cars—in case the basement and the garage are not enough—a huge patio that walks right out to a dune deck, and balconies overlooking the ocean. The property is right off Surf Drive, which is the widest street coming from Montauk Highway and is all paved. The beach access points for other residents of the Amagansett Dunes are blocks away on either side of this property, which means there isn't the noise of other residents coming and going to the ocean beaches. (However, there is the noise of all those cars in the basement, garage, and driveway.) We're told, "The potential here is enormous to transform this into your own dream home, or just enjoy as the lovely, comfortable beach house that it is." The new owner's dream better include plenty of cars.
Another recent sale is 118 Meeting House Lane, purchased by Philip Uhde for $6.6 million. The 5,100-square-foot house is perched on 0.74 acre. Step into the entry foyer to see an expansive lawn through 8-foot-tall glass French doors. The main level with 10-foot coffered ceilings opens to a living room with fireplace and covered porch with sunset views perfect for outdoor entertaining. The dining room flows to an open and light-filled space with family room, breakfast room and gourmet chef's kitchen, all with views of a bluestone and brick fireplace, and access to the outdoors. The first-floor bedroom with en-suite bath has a separate entrance to the rear yard. At the top of the grand center staircase is a sitting area with outdoor porch. The four bedrooms have en-suite baths. The grand master bedroom has a fireplace and a mahogany terrace that has access to both the bedroom and the master bath featuring a floor-to-ceiling glass-enclosed steam shower and free-standing jacuzzi tub. The finished lower level with media room has a fireplace and half-bath.
Back on Marine Boulevard, #57 has sold to an LLC for an even $5 million. This is described as "prime coastal property high on the Amagansett bluffs directly across the street from the ocean with views of the Atlantic to the south and a vast natural dunescape to the north." The 0.7-acre property is accessed by a long private drive leading to a 3,000-square-foot shingled beach house with extensive tiered decking and a heated pool. A separate artist's studio is an amenity to the property, ideal as a pool house, office, yoga retreat, or playroom. The interior has vaulted ceilings throughout, crisp white-wood flooring, extensive whitewashed shiplap, soft gray architectural beams, and "an easy relaxed flow all on one level." A dining area with three sides of windows is a space in which to entertain. Three of the four guest rooms offer access to the outdoors including an en-suite master with a walk-in closet. The two baths have been renovated with natural stone and marble finishes.
One more in Amagansett to mention is actually two addresses, #226 and #230 Bluff Road, sold by the estate of Barry Sullivan to an LLC, for $4.5 million and $4 million, respectively.
The late Mr. Sullivan—who passed away in 2016 at the age of 85 after an 11-year struggle with Parkinson's disease, according to his New York Times obituary—was a distinguished Chicago banker. Having grown up in the Bronx, in his retirement he returned to New York City and served as the deputy mayor for finance and economic development under Mayor David Dinkins. He then spent a year and a half as the New York City Board of Education's chief operating officer.
The estate's two single and separate lots were sold together. The front lot is an acre of vacant land ready for development or it can be kept as is, allowing for complete privacy for the back property, which is also an acre with an existing 3,200-square-foot house, swimming pool, and tennis court. These 2 acres of property are within walking distance of the ocean beaches and the downtown area, or maybe borrow one of those cars from the new owner of 143 Marine Boulevard, above.


As the European Congress of Radiology in Vienna prepares to hold a record number of sessions for radiographers, including many focused on the evolving roles of radiographers, Dr Jonathan McNulty, vice president of the European Federation of Radiographer Societies (EFRS), believes that delivering Europe-wide levels of education, qualification and training for radiographers is critical in raising standards of care, diagnostics, therapeutics and patient safety. He acknowledged that, whilst radiographers in Europe are generally well educated, and often trained to masters or doctoral level, access to bachelor degree level training in some countries is still limited.
'In Europe, the quality of imaging services is generally good, however, there are some discrepancies so an important body of work at European level is to try to work with radiographers, national societies and education institutions to enhance the education and training of radiographers,' McNulty added.
ECR 2017 has a strong education and scientific program for radiographers, including a number of sessions delivered with partner organisations and, this year, ECR is recognised as the official congress the EFRS for medical imaging.
There are sessions looking at professional challenges, patient safety and refresher courses across all specialist areas of radiography.
However, while radiographers have been viewed as technicians in some nations, in others their role has advanced significantly with their increasing knowledge, experience and responsibility with some working as advanced practitioners or the equivalent of consultant radiographers.
The European Society of Radiology and EFRS have a Memorandum of Understanding as a blueprint for greater collaboration at a time that radiographers are playing these ever greater roles in radiology services.
'Radiographers are a key piece in the jigsaw, which makes for a modern state-of-the-art diagnostic or therapeutic service being provided by radiology departments,' he said.
'It is essential that radiographers are the experts in terms of the technology that is at the heart of a modern radiology department and radiographers have the key role to play in optimising the use of that technology.
'An equally essential role - that people can often overlook - is that radiographers work closely with their patients. They interact with them on a daily basis and have an important role to play in patient care and patient safety in a modern imaging department.
McNulty said a team approach and closer collaboration with other health professionals remained important in terms of achieving patient safety and the best clinical outcomes. McNulty is presenting a session, looking at the challenges in education and training and implementing the theory of patient safety into clinical practice.
He said a challenge lay in achieving agreement on the scope of patient safety within radiology.
Dr Jonathan McNulty is an Assistant Professor and Head of Subject, Radiography, in the School of Medicine, University College Dublin, Ireland where he oversees the BSc Radiography programme along with over 20 postgraduate programmes and as a University Fellow in Teaching and Academic Development, he has led University-wide educational research projects. Since 2014 he has sat on the Board of the European Federation of Radiographer Societies (EFRS) and is currently Vice-President of the EFRS. Having delivered more than 100 conference presentations and contributed to over 50 journal articles, he has held significant national and international research grants. His research interests include medical and healthcare education, optimisation and benefit-risk communication, neuroimaging and image perception.


text:
Canadian Artillery in Action in 1915
By RMR Foundation | April 8th, 2015 | This Day in RMR History | No Comments
Billets, Cassel
The Battalion War Diarist wrote for this day: "All ranks resting." [1]
THIS DAY IN RMR HISTORY: "London, April 8. A despatch from Amsterdam says that fighting is still proceeding in the neighborhood of Neuve Chapelle. The Allies' artillery is bombarding the villages of Fromelles and Herlies. The Germans have delivered numerous counter-attacks especially at night, but have been consistently unsuccessful.
Packing artillery shells to the front
The artillery fighting in the Fromelles region is stated to have been particularly violent. The Germans attacked at this point in close formation and supported by artillery, while four aeroplanes dropped bombs on the British positions. The German infantry is said to have suffered considerable losses.
Strong German attacks near Armentieres, according to this despatch, have also failed. British warships continue to shell the Belgian coast, supporting the allies' land operations. The allies are delivering infantry attacks regularly." [3]
[1]   War Diary, 14th Canadian Battalion, The Royal Montreal Regiment, April 8, 1915.  Library and Archives Canada, Ottawa, http://data2.collectionscanada.ca/e/e044/e001089714.jpg
[2]   "Heavy Fight Of Artillery," The Citizen, Ottawa, Ontario, Thursday, April 8, 1915, pg. 2, col. 5.
[3]   Ibid.
[4]  http://freepages.genealogy.rootsweb.ancestry.com/~gregkrenzelok/veterinary%20corp%20in%20ww1/horsecarryingammo.jpg


text:
Jacob Aagaard, född 31 juli 1973 i Danmark, är en skotsk schackspelare. Han är stormästare i schack (GM) och blev brittisk mästare 2007 och skotsk mästare 2012. Han vann också skotska mästerskapet i schack 2005, men var då ännu inte brittisk medborgare, varför titeln gick till tvåan i turneringen, Craig Pritchett.

Aagaard har givit ut ett stort antal titlar om spelöppningar och taktik och strateg inom schack.

Referenser

Noter

Externa länkar

Skotska schackspelare
Danska schackspelare
Födda 1973
Levande personer
Män
Stormästare i schack
Brittiska schackspelare


text:
'Situationships': Why Gen Z are embracing the grey area
In relationships, people have often avoided the murky middle ground between being committed to a partner and staying casual. Young daters are instead opting into it.
Long gone are the days when seeing a film or sharing a milkshake was all it took to solidify a couple as definitively together. Instead, modern dating has evolved into a delicate – at times complicated – series of 'baby steps' for young people.
Research has shown that Gen Z's attitudes towards dating and sex have evolved from the generations before them; they take an especially pragmatic approach to love and sex, and subsequently aren't prioritising establishing committed romantic relationships the same way their older peers once did.
That doesn't mean, however, that they're not expressing interest in romance and intimacy entirely; rather, they're finding new ways to satisfy those wants and needs that fit better into their lives. This shift has given rise to the idea of the 'situationship' – a term that describes the grey area between friendship and a relationship.
A situationship gives name to a hard-to-define stage of dating that experts say has skyrocketed in popularity among Gen Z. "Right now, this solves some kind of need for sex, intimacy, companionship – whatever it is – but this does not have necessarily a long-term time horizon," says Elizabeth Armstrong, a sociology professor at the University of Michigan, US, whose research centres on sexuality and situationships, specifically. People are increasingly embracing the relationship classification: the term has hit an all-time high in Google search traffic this year, after starting to gain notable traction late in 2020. There's a worldwide interest in situationships, across ethnicities, genders and sexual orientations, adds Armstrong.
The creation – and continued rise – of this term, especially among young daters, reveals a lot about how Gen Zers are re-framing what love and sex means, in a way that looks different than the generations before them.
The concept of the situationship goes against "this notion that being with someone where it's not going anywhere is 'wasting time'" – Elizabeth Armstrong
No need to be 'going somewhere'
A situationship is an informal arrangement typically between two people that has components of both emotional and physical connection, yet operates outside the conventional idea of being in an exclusive, committed relationship. In some cases, situationships are constrained by time and the idea that a casual arrangement is the best fit for the current situation. This could be the case for two final-year university students, for instance, who might not want to progress into a committed partnership, considering new jobs could take them to new cities after graduating.
Armstrong argues situationships are popular because they challenge the 'relationship escalator': the idea that intimate partnerships are meant to have a linear structure with the goal of hitting conventional relationship milestones, such as co-habitation, engagement and marriage. The concept of the situationship goes against "this notion that being with someone where it's not going anywhere is 'wasting time'", she says – a sentiment she notes Gen Z is increasingly embracing. Rather, people in these arrangements willingly opt into the grey area of an undefined relationship. According to Armstrong, they believe "the situationship, for whatever reason, works for right now. And for right now, I'm not going to worry about having a thing that is 'going somewhere'".
Some research chimes with this. In interviews with 150 undergraduate students during the 2020 to 2021 academic year, Lisa Wade, associate professor of sociology at Tulane University, US, observed that Gen Z are more reluctant to define the relationship, or even admit to wanting a relationship to progress. She says her research has shown that "holding one's cards close to one's chest is not unique to today's young people", but Gen Z are especially unwilling to share their feelings with each other.
On social media, TikTokers and Tweeters – Gen Zers, especially – widely share stories of situationships. On TikTok, videos tagged #situationship have been viewed more than 839 million times, and videos under #situationships and #situationship have also racked up millions of views. References also abound in pop culture: the term appears in popular dating shows such as Love Island UK and in songs, such as Situationship by millennial Swedish singer Snoh Aalegra.
"We joke, me and my friends, that we're all living the same life," says Amanda Huhman, 26, whenever she and her friends compare notes on situationships. Texas-based Huhman has documented the experience of situationships on TikTok. From her own interactions and the engagement she sees, she believes the arrangement is common. "I think it's becoming a really popular part of dating culture, at least for Gen Z and people in the young millennial, Gen Z age."
Huhman has spent more than a year in what she describes as a situationship. When she posted a TikTok about her experience, it garnered close to 8 million views and tens of thousands of comments – many of which were people chiming in about their own situationships.
As a healthcare consultant, Huhman works remotely, travels often and moves to new cities for a few months at a time. Being in a situationship, she says, means she has more freedom and autonomy. "Our dating culture today is very chaotic and confusing," believes Huhman. "[Gen Zers] just live this… busy lifestyle, and I think we've kind of adapted dating to match that."
26-year-old Amanda Huhman is in a situationship, which she says best suits her life right now
Prioritising personal trajectory
As Gen Z enters the dating world, finding love has a set of modern challenges. For instance, the pandemic has entirely changed the way many people meet partners and date, and a large-scale move towards online dating often takes its toll.
Additionally, many young people simply aren't putting the emphasis on dating intentionally that they were in the past; facing the climate crisis, an unstable economy with surging inflation and political and social upheaval, young people are more involved in advocacy and in search of personal, professional and financial stability first. "Young people would say that relationships are distracting them from their educational and career goals, and that it's best to not get too attached, because you might sacrifice your own trajectory in life for someone else," says Wade.
As a result, situationships can be the best option for Gen Zers looking to explore their romantic and sexual identities without letting other commitments take a backseat. The phenomenon "diversifies the sense of options that people have", says Armstrong, and it's become increasingly normal to opt into this grey area instead of avoiding it.
But, of course, this murky-by-definition arrangement doesn't come without precarity – and even risk. In theory, situationships can function as a container for "radical honesty", says Wade, when two people are open about what they really want and agree on the terms of a transparent situationship. But in practice, it can be difficult for two people's priorities to align, and situationships can end poorly when each party is not on the same page about what they want out of the situation. Most commonly, she says this happens when one person is ready to progress to a committed relationship, but a fear of change might keep both people from ever discussing this.
Regardless, in today's dating world, the rising interest in situationships indicates a shift in how young people may re-frame love and sex going forward – newly embracing what they feel is a satisfying middle ground that many daters in prior generations avoided.
As for Huhman, she's perfectly content living in the in-between. "It's my choice, it's a decision I'm making and I'm happy. It's working for me," she says. "As long as people are comfortable and it feels right to them, then don't worry about what the expectations are."
Tags: Technology, women's news


Apr. 19 - Wedbush tech analyst Shyam Patil says in order for Twitter's stock to turnaround, the company has to figure out a way to drive user growth and engagement- especially internationally. Bobbi Rebell reports.


text:
/Sports/Penn State (Page 5)
7 Lions invited to Combine
Altoona Area High School product Kevin Givens and six other Penn State players have been invited to participate in the NFL combine that begins later this month in Indianapolis. Nittany Lions joining Givens at the combine will be: quarterback Trace McSorley, running back Miles Sanders, ...
Young's go-ahead basket lifts Buckeyes past PSU
COLUMBUS, Ohio (AP) — Kyle Young scored the go-ahead basket with 63 seconds left and Ohio State held off Penn State 74-70 in a Big Ten game on Thursday night. The Buckeyes (15-7, 5-6) were 25-9 last season but lost three times to Penn State, including the semifinals of the conference ...
Lions add two players to roster
UNIVERSITY PARK— Penn State signed two more players to the class of 2019 on national signing day part two Wednesday, bringing the Nittany Lions' class size to 23. Penn State's class ranks No. 13 in the country and No. 2 in the Big Ten (Michigan is No. 8 overall), according to 247Sports. ...
Lions aim for thriller in Ohio
UNIVERSITY PARK — Nick Lee was a freshman just three weeks into his career as a Penn State starter last season when he got his first taste of the Penn State-Ohio State rivalry. That night made an impression on him. "That was really, really cool. It kind of felt to me like the biggest ...
Penn State beats Northwestern to snap eight-game losing skid
EVANSTON, Ill. (AP) — Lamar Stevens scored 18 points and Penn State beat Northwestern 59-52 to snap an eight-game losing streak on Monday night. The Nittany Lions (8-14, 1-10) picked up their first Big Ten win and stopped their longest skid since a 14-game streak during the 2012-13 season. ...
Page reaches 2,000 in Penn State loss
UNIVERSITY PARK (AP) — Megan Gustafson had 30 points, 11 rebounds and five assists for her 20th double-double this season, and 75th of career, and No. 13 Iowa beat Penn State 81-61 on Sunday. Teniya Page scored 17 points and became the sixth player in program history to reach the ...
Lions win 6th straight, beat Michigan
UNIVERSITY PARK — Even when his team trailed 8-0 and 11-3 early in the dual meet Friday night against No. 4 Michigan, there was no panic in Penn State coach Cael Sanderson. Instead, he said, there was more a sense of anticipation to see how his team would deal with the deficits. "I'm ...
Lions force OT, Purdue wins it there
UNIVERSITY PARK (AP) — Matt Painter was surprised to see his best player getting open shots early. He wasn't surprised when Carsen Edwards made one after the other, and then drained the well-defended ones later. The Big Ten's leading scorer finished with 38 points, including 20 in the ...
Sanderson optimistic about PSU
UNIVERSITY PARK — With the top-ranked Penn State wrestling team's biggest challenge to date on the horizon, coach Cael Sanderson sounded hopeful Tuesday that the Nittany Lions will be at full strength. No. 4 Michigan, fresh off an upset of then-No. 2 Ohio State, comes to Happy Valley for ...
Penn State takes down Indiana
BLOOMINGTON, Ind. — No. 1 Penn State took down home standing Indiana to close out a Big Ten road swing through the Hoosier state on Sunday. Penn State downed Indiana 35-9 in Bloomington to remain unbeaten on the year. Penn State won all but one off the contested bouts (giving up a forfeit ...