text:
package com.twitter.finagle

import com.twitter.conversions.StorageUnitOps._
import com.twitter.finagle.Mux.param.CompressionPreferences
import com.twitter.finagle.Mux.param.MaxFrameSize
import com.twitter.finagle.Stack.Params
import com.twitter.finagle.client._
import com.twitter.finagle.factory.TimeoutFactory
import com.twitter.finagle.naming.BindingFactory
import com.twitter.finagle.filter.NackAdmissionFilter
import com.twitter.finagle.filter.PayloadSizeFilter
import com.twitter.finagle.mux.Handshake.Headers
import com.twitter.finagle.mux.pushsession._
import com.twitter.finagle.mux.transport.{OpportunisticTls => MuxOpportunisticTls, _}
import com.twitter.finagle.mux.ExportCompressionUsage
import com.twitter.finagle.mux.Handshake
import com.twitter.finagle.mux.OpportunisticTlsParams
import com.twitter.finagle.mux.Request
import com.twitter.finagle.mux.Response
import com.twitter.finagle.mux.TlsSnoopingByDefault
import com.twitter.finagle.mux.WithCompressionPreferences
import com.twitter.finagle.netty4.pushsession.Netty4PushListener
import com.twitter.finagle.netty4.pushsession.Netty4PushTransporter
import com.twitter.finagle.netty4.ssl.server.Netty4ServerSslChannelInitializer
import com.twitter.finagle.netty4.ssl.client.Netty4ClientSslChannelInitializer
import com.twitter.finagle.param.Label
import com.twitter.finagle.param.OppTls
import com.twitter.finagle.param.ProtocolLibrary
import com.twitter.finagle.param.Stats
import com.twitter.finagle.param.Timer
import com.twitter.finagle.param.WithDefaultLoadBalancer
import com.twitter.finagle.pool.BalancingPool
import com.twitter.finagle.pushsession._
import com.twitter.finagle.server._
import com.twitter.finagle.ssl.OpportunisticTls
import com.twitter.finagle.ssl.SnoopingLevelInterpreter
import com.twitter.finagle.tracing._
import com.twitter.finagle.transport.Transport.ClientSsl
import com.twitter.finagle.transport.Transport.ServerSsl
import com.twitter.finagle.transport.Transport
import com.twitter.io.Buf
import com.twitter.io.ByteReader
import com.twitter.util.Future
import com.twitter.util.StorageUnit
import io.netty.channel.Channel
import io.netty.channel.ChannelPipeline
import java.net.SocketAddress
import java.util.concurrent.Executor
import scala.collection.mutable.ArrayBuffer

/**
 * A client and server for the mux protocol described in [[com.twitter.finagle.mux]].
 */
object Mux extends Client[mux.Request, mux.Response] with Server[mux.Request, mux.Response] {

  /**
   * The current version of the mux protocol.
   */
  val LatestVersion: Short = 0x0001

  /**
   * Mux-specific stack params.
   */
  object param {

    /**
     * A class eligible for configuring the maximum size of a mux frame.
     * Any message that is larger than this value is fragmented across multiple
     * transmissions. Clients and Servers can use this to set an upper bound
     * on the size of messages they are willing to receive. The value is exchanged
     * and applied during the mux handshake.
     */
    case class MaxFrameSize(size: StorageUnit) {
      assert(size.inBytes <= Int.MaxValue, s"$size is not <= Int.MaxValue bytes")
      assert(size.inBytes > 0, s"$size must be positive")

      def mk(): (MaxFrameSize, Stack.Param[MaxFrameSize]) =
        (this, MaxFrameSize.param)
    }
    object MaxFrameSize {
      implicit val param = Stack.Param(MaxFrameSize(Int.MaxValue.bytes))
    }

    /**
     * A class eligible for configuring if a client's TLS mode is opportunistic.
     * If it's not None, then mux will negotiate with the supplied level whether
     * to use TLS or not before setting up TLS.
     *
     * If it's None, it will not attempt to negotiate whether to use TLS or not
     * with the remote peer, and if TLS is configured, it will use mux over TLS.
     *
     * @note opportunistic TLS is not mutually intelligible with simple mux
     *       over TLS
     */
    @deprecated("Please use com.twitter.finagle.param.OppTls directly", "2021-03-11")
    type OppTls = com.twitter.finagle.param.OppTls

    @deprecated("Please use com.twitter.finagle.param.OppTls directly", "2021-03-11")
    object OppTls {
      def apply(level: Option[OpportunisticTls.Level]): OppTls =
        com.twitter.finagle.param.OppTls(level)

      /** Determine whether opportunistic TLS is configured to `Desired` or `Required`. */
      def enabled(params: Stack.Params): Boolean = com.twitter.finagle.param.OppTls.enabled(params)
    }

    /**
     * A class eligible for configuring how to enable TLS.
     *
     * Only for internal use and testing--not intended to be exposed for
     * configuration to end-users.
     */
    private[finagle] case class TurnOnTlsFn(fn: (Stack.Params, ChannelPipeline) => Unit)
    private[finagle] object TurnOnTlsFn {
      implicit val param = Stack.Param(TurnOnTlsFn((_: Stack.Params, _: ChannelPipeline) => ()))
    }

    // tells the Netty4Transporter not to turn on TLS so we can turn it on later
    private[finagle] def removeTlsIfOpportunisticClient(params: Stack.Params): Stack.Params = {
      params[OppTls].level match {
        case None => params
        case _ => params + Transport.ClientSsl(None)
      }
    }

    // tells the Netty4Listener not to turn on TLS so we can turn it on later
    private[finagle] def removeTlsIfOpportunisticServer(params: Stack.Params): Stack.Params = {
      // If we have snooping enabled we're going to leave the params as is.
      // The snooper will decided whether to add the TLS handler.
      if (SnoopingLevelInterpreter.shouldEnableSnooping(params)) params
      else {
        params[OppTls].level match {
          case None => params
          case _ => params + Transport.ServerSsl(None)
        }
      }
    }

    private[finagle] case class PingManager(builder: (Executor, MessageWriter) => ServerPingManager)

    private[finagle] object PingManager {
      implicit val param = Stack.Param(PingManager { (_, writer) =>
        ServerPingManager.default(writer)
      })
    }

    /**
     * A class eligible for configuring if the client or server is willing to compress or decompress
     * requests or responses.
     */
    case class CompressionPreferences(compressionPreferences: Compression.LocalPreferences) {
      def mk(): (CompressionPreferences, Stack.Param[CompressionPreferences]) =
        (this, CompressionPreferences.param)
    }
    object CompressionPreferences {
      implicit val param = Stack.Param(CompressionPreferences(Compression.DefaultLocal))
    }
  }

  object Client {

    /** Prepends bound residual paths to outbound Mux requests's destinations. */
    private object MuxBindingFactory extends BindingFactory.Module[mux.Request, mux.Response] {
      protected[this] def boundPathFilter(residual: Path) =
        Filter.mk[mux.Request, mux.Response, mux.Request, mux.Response] { (req, service) =>
          service(mux.Request(residual ++ req.destination, req.contexts, req.body))
        }
    }

    private[finagle] val tlsEnable: (Stack.Params, ChannelPipeline) => Unit = (params, pipeline) =>
      pipeline.addFirst("opportunisticSslInit", new Netty4ClientSslChannelInitializer(params))

    private[finagle] def params: Stack.Params = StackClient.defaultParams +
      ProtocolLibrary("mux") +
      param.TurnOnTlsFn(tlsEnable)

    private val stack: Stack[ServiceFactory[mux.Request, mux.Response]] = StackClient.newStack
    // We use a singleton pool to manage a multiplexed session. Because it's mux'd, we
    // don't want arbitrary interrupts on individual dispatches to cancel outstanding service
    // acquisitions, so we disable `allowInterrupts`.
      .replace(
        StackClient.Role.pool,
        BalancingPool.module[mux.Request, mux.Response](allowInterrupts = false)
      )
      // As per the config above, we don't allow interrupts to propagate past the pool.
      // However, we need to provide a way to cancel service acquisitions which are taking
      // too long, so we "move" the [[TimeoutFactory]] below the pool.
      .remove(StackClient.Role.postNameResolutionTimeout)
      .insertAfter(
        StackClient.Role.pool,
        TimeoutFactory.module[mux.Request, mux.Response](Stack.Role("MuxSessionTimeout"))
      )
      .replace(BindingFactory.role, MuxBindingFactory)
      // Because the payload filter also traces the sizes, it's important that we do so
      // after the tracing context is initialized.
      .insertAfter(
        TraceInitializerFilter.role,
        PayloadSizeFilter.clientModule[mux.Request, mux.Response](_.body.length, _.body.length)
      )
      // Since NackAdmissionFilter should operate on all requests sent over
      // the wire including retries, it must be below `Retries`. Since it
      // aggregates the status of the entire cluster, it must be above
      // `LoadBalancerFactory` (not part of the endpoint stack).
      .insertBefore(
        StackClient.Role.prepFactory,
        NackAdmissionFilter.module[mux.Request, mux.Response]
      )
      .prepend(ExportCompressionUsage.module)

    /**
     * Returns the headers that a client sends to a server.
     *
     * @param maxFrameSize the maximum mux fragment size the client is willing to
     * receive from a server.
     */
    private[finagle] def headers(
      maxFrameSize: StorageUnit,
      tlsLevel: OpportunisticTls.Level,
      compressionPreferences: Compression.LocalPreferences
    ): Handshake.Headers = {
      val buffer = ArrayBuffer(
        MuxFramer.Header.KeyBuf -> MuxFramer.Header.encodeFrameSize(maxFrameSize.inBytes.toInt),
        MuxOpportunisticTls.Header.KeyBuf -> tlsLevel.buf
      )

      if (!compressionPreferences.isDisabled) {
        buffer += (CompressionNegotiation.ClientHeader.KeyBuf ->
          CompressionNegotiation.ClientHeader.encode(compressionPreferences))
      }
      buffer.toSeq
    }

    /**
     * Check the opportunistic TLS configuration to ensure it's in a consistent state
     */
    private def validateTlsParamConsistency(dest: Name, params: Stack.Params): Unit = {
      if (OppTls.enabled(params) && params[ClientSsl].sslClientConfiguration.isEmpty) {
        val level = params[OppTls].level
        val label = params[Label].label
        throw new IllegalStateException(
          s"Client($label) with destination ${Name.showable.show(dest)} and desired opportunistic " +
            s"TLS ($level) is missing the SSL configuration. Make sure that your TLS settings " +
            s"are properly configured."
        )
      }
    }
  }

  final case class Client(
    stack: Stack[ServiceFactory[mux.Request, mux.Response]] = Mux.Client.stack,
    params: Stack.Params = Mux.Client.params)
      extends PushStackClient[mux.Request, mux.Response, Client]
      with WithDefaultLoadBalancer[Client]
      with OpportunisticTlsParams[Client]
      with WithCompressionPreferences[Client] {

    // These are lazy because the stats receiver is not appropriately scoped
    // until after the `.newService` call (or equivalent). If they're not lazy
    // we'll end up with dead stats scoped to `mux/...` instead of `client_name/mux/...`.
    private[this] lazy val statsReceiver = params[Stats].statsReceiver
    private[this] lazy val sessionStats = new SharedNegotiationStats(statsReceiver)
    private[this] lazy val sessionParams = params + Stats(statsReceiver.scope("mux"))

    protected type SessionT = MuxClientNegotiatingSession
    protected type In = ByteReader
    protected type Out = Buf

    protected def newSession(
      handle: PushChannelHandle[ByteReader, Buf]
    ): Future[MuxClientNegotiatingSession] = {
      val negotiator: Option[Headers] => Future[MuxClientSession] = { headers =>
        new Negotiation.Client(sessionParams, sessionStats).negotiateAsync(handle, headers)
      }
      val headers = Mux.Client.headers(
        params[MaxFrameSize].size,
        params[OppTls].level.getOrElse(OpportunisticTls.Off),
        params[CompressionPreferences].compressionPreferences
      )

      Future.value(
        new MuxClientNegotiatingSession(
          handle = handle,
          version = Mux.LatestVersion,
          negotiator = negotiator,
          headers = headers,
          name = params[Label].label,
          stats = sessionParams[Stats].statsReceiver
        )
      )
    }

    override def newClient(dest: Name, label0: String): ServiceFactory[Request, Response] = {
      // We want to fail fast if the client's TLS configuration is inconsistent
      Mux.Client.validateTlsParamConsistency(dest, params)
      super.newClient(dest, label0)
    }

    protected def newPushTransporter(sa: SocketAddress): PushTransporter[ByteReader, Buf] = {
      // We use a custom Netty4PushTransporter to provide a handle to the
      // underlying Netty channel via MuxChannelHandle, giving us the ability to
      // add TLS support later in the lifecycle of the socket connection.
      new Netty4PushTransporter[ByteReader, Buf](
        transportInit = _ => (),
        protocolInit = PipelineInit,
        remoteAddress = sa,
        params = Mux.param.removeTlsIfOpportunisticClient(params)
      ) {
        override protected def initSession[T <: PushSession[ByteReader, Buf]](
          channel: Channel,
          protocolInit: (ChannelPipeline) => Unit,
          sessionBuilder: (PushChannelHandle[ByteReader, Buf]) => Future[T]
        ): Future[T] = {
          // With this builder we add support for opportunistic TLS via `MuxChannelHandle`
          // and the respective `Negotiation` types. Adding more proxy types will break this pathway.
          def wrappedBuilder(pushChannelHandle: PushChannelHandle[ByteReader, Buf]): Future[T] =
            sessionBuilder(new MuxChannelHandle(pushChannelHandle, channel, sessionParams))

          super.initSession(channel, protocolInit, wrappedBuilder)
        }
      }
    }

    protected def toService(
      session: MuxClientNegotiatingSession
    ): Future[Service[Request, Response]] =
      session.negotiate().flatMap(_.asService)

    protected def copy1(
      stack: Stack[ServiceFactory[Request, Response]],
      params: Stack.Params
    ): Client = copy(stack, params)
  }

  def client: Client = Client()

  def newService(dest: Name, label: String): Service[mux.Request, mux.Response] =
    client.newService(dest, label)

  def newClient(dest: Name, label: String): ServiceFactory[mux.Request, mux.Response] =
    client.newClient(dest, label)

  object Server {

    private[this] def tlsSnoopingParams: Params = {
      if (!TlsSnoopingByDefault()) Params.empty
      else Params.empty + SnoopingLevelInterpreter.EnabledForNegotiatingProtocols
    }

    private[finagle] val stack: Stack[ServiceFactory[mux.Request, mux.Response]] =
      StackServer.newStack
      // We remove the trace init filter and don't replace it with anything because
      // the mux codec initializes tracing.
        .remove(TraceInitializerFilter.role)
        .prepend(ExportCompressionUsage.module)
        // Because tracing initialization happens in the mux codec, we know the service stack
        // is dispatched with proper tracing context, so the ordering of this filter isn't
        // relevant.
        .prepend(PayloadSizeFilter.serverModule(_.body.length, _.body.length))

    private[finagle] val tlsEnable: (Stack.Params, ChannelPipeline) => Unit = (params, pipeline) =>
      pipeline.addFirst("opportunisticSslInit", new Netty4ServerSslChannelInitializer(params))

    private[finagle] def params: Stack.Params = StackServer.defaultParams +
      ProtocolLibrary("mux") +
      param.TurnOnTlsFn(tlsEnable) ++
      tlsSnoopingParams

    type SessionF = (
      RefPushSession[ByteReader, Buf],
      Stack.Params,
      SharedNegotiationStats,
      MuxChannelHandle,
      Service[Request, Response]
    ) => PushSession[ByteReader, Buf]

    val defaultSessionFactory: SessionF = (
      ref: RefPushSession[ByteReader, Buf],
      params: Stack.Params,
      sharedStats: SharedNegotiationStats,
      handle: MuxChannelHandle,
      service: Service[Request, Response]
    ) => {
      val scopedStatsParams = params + Stats(params[Stats].statsReceiver.scope("mux"))
      MuxServerNegotiator.build(
        ref = ref,
        handle = handle,
        service = service,
        makeLocalHeaders = Mux.Server
          .headers(
            _: Headers,
            params[MaxFrameSize].size,
            params[OppTls].level.getOrElse(OpportunisticTls.Off),
            params[CompressionPreferences].compressionPreferences
          ),
        negotiate = (service, headers) =>
          new Negotiation.Server(scopedStatsParams, sharedStats, service)
            .negotiate(handle, headers),
        timer = params[Timer].timer
      )
      ref
    }

    /**
     * Returns the headers that a server sends to a client.
     *
     * @param clientHeaders The headers received from the client. This is useful since
     * the headers the server responds with can be based on the clients.
     *
     * @param maxFrameSize the maximum mux fragment size the server is willing to
     * receive from a client.
     */
    private[finagle] def headers(
      clientHeaders: Handshake.Headers,
      maxFrameSize: StorageUnit,
      tlsLevel: OpportunisticTls.Level,
      compressionPreferences: Compression.LocalPreferences
    ): Handshake.Headers = {
      val clientCompressionPreferences = Handshake
        .valueOf(CompressionNegotiation.ClientHeader.KeyBuf, clientHeaders)
        .map(CompressionNegotiation.ClientHeader.decode(_))
        .getOrElse(Compression.PeerCompressionOff)
      val compressionFormats = CompressionNegotiation.negotiate(
        compressionPreferences,
        clientCompressionPreferences
      )

      val withoutCompression = Seq(
        MuxFramer.Header.KeyBuf -> MuxFramer.Header.encodeFrameSize(maxFrameSize.inBytes.toInt),
        MuxOpportunisticTls.Header.KeyBuf -> tlsLevel.buf
      )

      if (compressionFormats.isDisabled) {
        withoutCompression
      } else {
        withoutCompression :+ (CompressionNegotiation.ServerHeader.KeyBuf ->
          CompressionNegotiation.ServerHeader.encode(compressionFormats))
      }
    }

    /**
     * Check the opportunistic TLS configuration to ensure it's in a consistent state
     */
    private def validateTlsParamConsistency(params: Stack.Params): Unit = {
      // We need to make sure
      if (OppTls.enabled(params) && params[ServerSsl].sslServerConfiguration.isEmpty) {
        val level = params[OppTls].level
        val label = params[Label].label
        throw new IllegalStateException(
          s"Server($label) desired opportunistic TLS ($level) but ServerSsl param is empty. Make" +
            s"sure your TLS configuration is properly loaded."
        )
      }
    }
  }

  final case class Server(
    stack: Stack[ServiceFactory[mux.Request, mux.Response]] = Mux.Server.stack,
    params: Stack.Params = Mux.Server.params,
    sessionFactory: Server.SessionF = Server.defaultSessionFactory)
      extends PushStackServer[mux.Request, mux.Response, Server]
      with OpportunisticTlsParams[Server]
      with WithCompressionPreferences[Server] {

    protected type PipelineReq = ByteReader
    protected type PipelineRep = Buf

    // Lazy so we don't accidentally instantiate stats before we have the appropriately
    // scoped stats receiver. See the Client shard stats for more detail.
    private[this] lazy val sessionStats = new SharedNegotiationStats(params[Stats].statsReceiver)

    protected def newListener(): PushListener[ByteReader, Buf] = {
      Mux.Server.validateTlsParamConsistency(params)
      new Netty4PushListener[ByteReader, Buf](
        pipelineInit = PipelineInit,
        params = Mux.param.removeTlsIfOpportunisticServer(params),
        setupMarshalling = identity
      ) {
        override protected def initializePushChannelHandle(
          ch: Channel,
          sessionFactory: SessionFactory
        ): Unit = {
          val proxyFactory: SessionFactory = { handle =>
            // We need to proxy via the MuxChannelHandle to get a vector
            // into the netty pipeline for handling installing the TLS
            // components of the pipeline after the negotiation.
            sessionFactory(new MuxChannelHandle(handle, ch, params))
          }
          super.initializePushChannelHandle(ch, proxyFactory)
        }
      }
    }

    protected def newSession(
      handle: PushChannelHandle[ByteReader, Buf],
      service: Service[Request, Response]
    ): RefPushSession[ByteReader, Buf] = {
      handle match {
        case h: MuxChannelHandle =>
          val ref = new RefPushSession[ByteReader, Buf](h, SentinelSession[ByteReader, Buf](h))
          sessionFactory(ref, params, sessionStats, h, service)
          ref

        case other =>
          throw new IllegalStateException(
            s"Expected to find a `MuxChannelHandle` but found ${other.getClass.getSimpleName}"
          )
      }
    }

    protected def copy1(
      stack: Stack[ServiceFactory[Request, Response]],
      params: Stack.Params
    ): Server = copy(stack, params)
  }

  def server: Server = Server()

  def serve(
    addr: SocketAddress,
    service: ServiceFactory[mux.Request, mux.Response]
  ): ListeningServer = server.serve(addr, service)
}

redpajama_set_name: RedPajamaGithub


Blog train has ended! thanks everyone who came!
Update: We will be packaging this as a Mega Charity kit though, all proceeds donated to charity! More to come later with the link and the charity!
Thank you, love the flip flops!
Thank you so much for this Freebie. I want to let you know that I posted a link to your blog in Creative Busy Hands Scrapbook Freebies Search List, under the Food/Kitchen Related, Recipe Card(s) post on Apr. 01, 2009. Thanks again.
I love your decorations on your blog!
What a darling addition to this cute kit. THANK YOU so much for your generosity. This gift is truly appreciated.
Those flip flops are awesome. Great kit. Thank you.


text:
Can't find what you're looking for? Just give us a call 01462 475900 / e-mail music@davids-music.co.uk
Dinked Edition
S-A-L-E
Elvis Costello & The Imposters - The Boy Named If
Format CD Ltd 2LP Purple
CD Ltd 2LP Purple - Sold out
Released 14th January 2022 via EMI
Elvis Costello and The Imposters release, The Boy Named If, a new album of urgent, immediate songs with bright melodies, guitar solos that sting and a quick step to the rhythm.
Costello tell us, "The full title of this record is 'The Boy Named If (And Other Children's Stories).' 'IF,' is a nickname for your imaginary friend; your secret self, the one who knows everything you deny, the one you blame for the shattered crockery and the hearts you break, even your own."
Produced by Sebastian Krys and Elvis Costello - the album is a collection of thirteen snapshots, "That take us from the last days of a bewildered boyhood to that mortifying moment when you are told to stop acting like a child - which for most men (and perhaps a few gals too) can be any time in the next fifty years," as Costello put it.
© 2022, David's Music LGC Powered by Shopify

redpajama_set_name: RedPajamaCommonCrawl


text:
Clinical 13 Other 8 Behavioral 8 General 8 Social 8 Cognitive 7
Neuroscience 6 Development 5 Applied Psychology 4 Culture 4 Faculty Development 4 Health 4 Child/Adolescent 3 Developmental Neuroscience 3 Experimental 3 Human Factors 3 Industrial/Organizational 3 Personality 3
Canton of Lucerne 3 New York 3 Arizona 2 District of Columbia 1 Florida 1 Hybrid 1
Iowa 1 Missouri 1 New Mexico 1 Pennsylvania 1 Texas 1 Virginia 1 Washington 1
Education Research Full time
Research Scientist in Psychology (Human-Animal Interaction) Featured
The College of Veterinary Medicine is seeking a Research Scientist IV. This is a unique and exciting opportunity for a Research Scientist to develop, design, and oversee operations of a successful psychology and human-animal research group, the Organization for Human-Animal Interaction Research and Education (OHAIRE). Specifically, they will oversee the research team and the design, collection, processing, and dissemination of data from a nationwide randomized clinical trial of service dogs for military veterans with posttraumatic stress disorder (NIH R01). The ideal candidate should exhibit excellent leadership and research skills. They should also have a high level of organization, professionalism, reliability, interpersonal communication skills, and the ability to work both independently and in a team environment. They should be interested in and motivated to lead a productive research group in the field of human-animal interaction. Outstanding UA benefits include health,...
University of Arizona College of Veterinary Medicine Tucson, AZ, USA Full time
UNM FIRST Neuroscience and Data Science Assistant professor CLUSTER search APPLICATION WINDOW First best consideration date: Wednesday, March 1, 2023 Apply by this date to ensure full consideration by the committee. Applications received after this date will only be considered if the positions have not yet been filled. Additional best consideration dates will likely be announced in the future, but this is contingent upon availability of positions. Start date is negotiable, with an earliest start date of Spring 2024. POSITION DESCRIPTION The University of New Mexico College of Arts and Sciences is seeking to recruit a cohort of nine tenure-track Assistant Professors. The positions are part of the NIH funded Faculty Institutional Recruitment for Sustainable Transformation (FIRST) grant ( https://commonfund.nih.gov/FIRST ) awarded to the University of New Mexico (UNM). The UNM FIRST program goals are: (1) to recruit a cohort...
University of New Mexico Albuquerque, NM, USA Full time
Position Title: Assistant Professor of Psychology Department: School of Social & Behavioral Sciences - Psychology Job Summary: The psychology department in the School of Social and Behavioral Sciences at Marist College invites applications for a tenure track position of Assistant Professor of Psychology to begin the fall of 2023. The successful candidate will specialize in School Psychology and teach in the undergraduate psychology major and the NASP approved MA School Psychology program, with an emphasis on graduate instruction. Graduate courses are held in the evenings. We seek those with expertise related to school-based consultation and academic/behavioral assessment and intervention. We are particularly interested in candidates who can fulfill the responsibilities of the Field Coordinator role. Applicants should be flexible about teaching assignments. We welcome candidates who will place an emphasis on quality...
Graystone Group Advertising Poughkeepsie, NY, USA Full time
Associate Director of Research and Evaluation
Associate Director of Research and Evaluation The Susan Hirt Hagen Center for Community Outreach, Research, and Evaluation (CORE) at Penn State Behrend is seeking an experienced candidate to serve as the full-time Associate Director of Research and Evaluation. Primary responsibilities for this position will include oversight and implementation of activities within the Research and Evaluation arm of CORE, including quantitative and qualitative data collection and analyses, development of quantitative and qualitative experimental designs, project and database management, extensive grant writing, evaluation report writing, and survey/assessment development. The successful candidate will possess training and experience in both quantitative and qualitative experimental methods, and strong data analysis skills using SPSS (required), MPlus and/or R (preferred), and at least one qualitative analysis program (e.g., NVivo). Ability to conduct qualitative focus groups is also preferred....
JobElephant Erie, PA, USA Full time
Assistant Teaching Professor - Psychology
Assistant Teaching Professor - Psychology Location: NAU - Yuma Regular/Temporary: Regular Job ID: 606924 Full/Part Time: Full-Time Workplace Culture NAU aims to be the nation's preeminent engine of opportunity, vehicle of economic mobility, and driver of social impact by delivering equitable postsecondary value in Arizona and beyond. https://nau.edu/president/strategic-plan/ Special Information Northern Arizona University, Yuma Branch Campus is conducting a national search to fill a non-tenure track, academic year faculty position in Psychology at the rank of Assistant Teaching Professor. This position is expected to be continuing with potential for promotion. Renewal is contingent on performance, continued funding and departmental needs. The Yuma Branch Campus of Northern Arizona University in Yuma, AZ is located on the grounds of Arizona Western College, the...
JobElephant Flagstaff, AZ, USA Full time
Visiting Assistant Professor of Psychology
Visiting Assistant Professor of Psychology Location: Walla Walla WA Open Date: Jan 09, 2023 Deadline: Description Visiting Assistant Professor of Psychology Located in the historic community of Walla Walla, Whitman's beautiful tree-lined campus is home to an intellectually diverse, dynamic, and supportive community of some 500 staff and faculty serving roughly 1,500 students from the local region and across the globe. With exceptional students, accomplished faculty and staff, along with a fiercely loyal and growing number of engaged alumni, Whitman College continues to build on its national reputation for academic excellence as one of the top liberal arts colleges in the country. The Department of Psychology at Whitman College is seeking candidates for a one-year position in psychology, with area of expertise open, at the rank of visiting assistant professor beginning August 2023. ABD...
JobElephant Walla Walla, WA, USA Full time
Tenure-Track Assistant Professor of Human Factors Psychology
The Department of Human Factors and Behavioral Neurobiology at Embry-Riddle Aeronautical University, Daytona Beach, FL invites applications for a tenure-track Assistant Professorship for the academic year beginning in August 2023. The successful candidate will join the Human Factors program, which is fully accredited by the Human Factors and Ergonomics Society. Specialty area is open but candidates must have training in Human Factors and/or Psychology, and an applied research program. Preference will be given to candidates whose research and teaching interests include but is not limited to applied social and cognitive psychology, individual differences/personality, applied motivation, and factors influencing technology adoption. The ideal candidate must have a Ph.D in Human Factors or Applied Psychology or a related field by Fall 2023, a record of research productivity, an ability to attract external funding, a commitment to teaching both graduate students and...
Embry-Riddle Aeronautical University Daytona Beach, FL, USA Full time
Stony Brook University seeks a full-time postdoctoral fellow to conduct research with Drs. Roman Kotov (Departments of Psychiatry and Psychology) and H. Andrew Schwartz (Department of Computer Science). Duration and start time are negotiable. We are seeking a postdoctoral fellow for a position on a study to develop artificial intelligence (AI)-based tools for assessment of PTSD and related psychopathology. It aims to recruit 1,000 participants with clinical PTSD symptoms to complete daily video diary and standard symptom assessments for 3 months. These data are unprecedent in mental health research, allowing investigation of hypotheses that were previous untestable. AI models will be trained using language, speech, and facial expressions to detect and predict PTSD symptoms. The resulting models will be validated against standard clinical measures. This study is associated with the World Well-Being Project, a consortium to advance measurement and understanding of mental...
Stony Brook University Stony Brook, NY, USA Full time
Graduate student and post-doctoral fellow research fellowships available now
Graduate Student and Post-doctoral Fellow Research Fellowships Research Fellowships: Graduate Student Research Fellowships are available with the U.S. Army Research Institute for the Behavioral and Social Sciences (ARI). Location: Students will work according to a hybrid system of remote and office locations. Starting in Summer 2023, most work will be performed in ARI's office at Fort Belvoir, VA. As such, priority will be given to candidates who reside in the Washington DC area. Wage: The hourly wage ranges from $18.00 to $32.00 and is determined by the graduate student's academic standing and program of study. Graduate students interested in these fellowships will be expected to work up to but no more than 20-30 hours per week and have the option of working 40 hours per week during summer. Research Support: The Foundational Science Research Unit (FSRU) conducts applied research on team effectiveness and houses ARI's Basic...
Consortium Research Fellows Program Hybrid (Fort Belvoir, VA, USA) Full time
Professor of Child and Adolescent Psychology (open rank)
As of the 1 August 2024 or by agreement, we are looking for a Professor of Child and Adolescent Psychology (open rank) In this role, you will generally be responsible for the field of Child and Adolescent Psychology at the newly created Faculty of Behavioural Sciences and Psychology. The study program in psychology will begin with the first year's bachelor program in the fall semester of 2024 and will thereafter be built up successively. You will teach the undergraduate course in Developmental Psychology and gradually take on other courses at the undergraduate and graduate levels. You will actively participate in the further design and detailed planning of the curriculum, especially in the planned Master's specialization in Child and Adolescent Psychology, where you will assume primary responsibility. You will develop an innovative research program with international outreach and—in cooperation with the Professor of Clinical Psychology—actively assist in...
University of Lucerne Lucerne, Switzerland Full time
Professor of Clinical Psychology (open rank)
As of the 1 August 2024 or by agreement, we are looking for a Professor of Clinical Psychology (open rank) In this role, you will generally be responsible for the field of Clinical Psychology at the newly created Faculty of Behavioural Sciences and Psychology. The study program in psychology will begin with the first year's bachelor program in the fall semester of 2024 and will thereafter be built up successively. You will teach the undergraduate course in Clinical Psychology and gradually take on other courses at the undergraduate and graduate levels. You will actively participate in the further design and detailed planning of the curriculum. You will develop an innovative research program with international outreach, and—in cooperation with the Professor of Child and Adolescent Psychology—actively assist in establishing a psychological consulting center. You will further help in establishing a doctoral program. The professorship can be taken up at the level of...
Professor of Psychology and Law (open rank)
As of the 1 August 2024 or by agreement, we are looking for a Professor of Psychology and Law (open rank) In this role, you will generally be responsible for the field of Psychology and Law at the newly created Faculty of Behavioral Sciences and Psychology. The study program in psychology will begin with the first year's bachelor program in the fall semester of 2024 and will thereafter be built up successively. Depending on your professional background, you will teach the lectures in social psychology, personality psychology, or cognitive psychology at the bachelor's level, and gradually take on other courses at the bachelor's and master's levels. You will actively participate in the further design and detailed planning of the curriculum, especially in the planned Master's specialization in Psychology and Law, where you will assume primary responsibility. Further, you will develop an innovative research program with international outreach and help in establishing a...
Assistant Professor of Psychology, one 1-yr and two 2-yr Term, Start Fall 2023
GRINNELL COLLEGE – DEPARTMENT OF PSYCHOLOGY – TERM POSITION (START FALL 2023). GRINNELL COLLEGE. The Grinnell College Department of Psychology invites applications for one, one-year and two, two-year term appointments beginning Fall 2023. Assistant Professor (Ph.D.) preferred; Instructor (ABD) or Associate Professor possible. Our energetic faculty teach a lively laboratory-based curriculum embedded within a natural science perspective . The department's strong commitment to inclusivity is manifest by our record of success in attracting and retaining students from diverse backgrounds. Our innovative curriculum promotes inclusivity and enables exploration of the boundaries and interdisciplinary potentials of the discipline. Conveniently located between both coasts, our welcoming mentoring community supports the development of faculty and students alike. Research and teaching interests for the positions might include but are not limited to research methods in...
Grinnell College Grinnell, IA, USA Full time
Assistant Clinical or Associate Clinical Professor of Clinical Psychology [Non-Tenure Track]
The Department of Psychological Sciences [https://psychology.missouri.edu/] at the University of Missouri invites applications for a 12-month clinical faculty position (.75-1.0 FTE) in its Psychological Services Clinic (PSC) beginning on or about August 1, 2023 . The PSC serves as the primary training clinic for doctoral students in the department's dually-accredited (APA, PCSAS) Clinical Psychology Program. We are seeking applicants who can contribute to the PSC's mission to provide and train students in the provision of high-quality, affordable, culturally-responsive, evidence-based services; and to support research that advances understanding and effective promotion of psychological health, consistent with the clinical program's clinical-scientist training model. We are especially interested in candidates who will contribute to our mission to foster and support a diverse and inclusive environment for student training and service delivery. We are specifically...
University of Missouri-Columbia Columbia, MO, USA Full time
The Department of Psychology at Southern Methodist University seeks a full-time, non-tenure-track Lecturer in Psychology (Position No. 0700004) to begin in August 2023. One-year contract, renewable. Normal teaching load is twelve credit hours per semester (a 4/4 load) with opportunities for summer and intersession teaching. A PhD in psychology is required at the time of appointment. We are seeking candidates with teaching experience and the expertise to teach a breadth of courses in one or more of the following areas of psychology: introductory, developmental, social, personality, cognitive, and psychopathology. The Department of Psychology is part of Dedman College of Humanities and Sciences ( https://www.smu.edu/dedman ) at SMU ( https://www.smu.edu/ ). The department houses a PhD program in clinical psychology, an MS program in organizational psychology, and undergraduate programs with one of the largest number of majors at the university. For additional information about the...
Southern Methodist University Dallas, TX, USA Full time
Associate Director/Clinical Asst. Professor, Krasner Psychological Center, Stony Brook University
Associate Director/Clinical Asst. Professor, Krasner Psychological Center, Stony Brook University Location: Stony Brook, NY Open Date: Dec 27, 2022 Deadline: Feb 15, 2023 at 11:59 PM Eastern Time Description The Department of Psychology at Stony Brook University invites applications for a full-time Associate Director of the Leonard Krasner Psychological Center (KPC) at the rank of Clinical Assistant Professor, non-tenure track. The KPC is the in-house training clinic for the Psychology Department's highly ranked doctoral program in Clinical Psychology and serves the University and surrounding community. It is also part of the three SBU Consortium Psychology Training Programs, which include an APA accredited pre-doctoral internship, a pre-doctoral externship, and a postdoctoral fellowship. The KPC provides evidence-based CBT-informed training and services for a wide range of psychological...
JobElephant Stony Brook, NY, USA Full time
Data/Social Scientist
We're significantly expanding our team! Join a group of Data Scientists, Social Scientists, and Civic Design Researchers working to meet DC's most critical problems and promote equitable outcomes for all Washingtonians. Thanks to federal recovery funds, the District has the opportunity to test innovative and bold ideas to build back better. Over the next three years, The Lab will help policymakers evaluate these efforts to make informed decisions. We need Data Scientists and Social Scientists at the Masters, ABD, PhD level and beyond with strong applied research, coding, statistics, and modeling skills to support this expansion. Check out some examples of our past and current work on transit subsidies , road safety , body-worn cameras , and rental assistance . Who we're looking for: Team players, who want to use scientific tools to make a positive difference in DC residents' lives, particularly for historically disadvantaged...
The Lab @ DC Washington, DC, USA Full time


text:
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.resourcemanager.signalr.models;

import com.azure.core.annotation.Fluent;
import com.fasterxml.jackson.annotation.JsonProperty;

/** Describes the properties of a resource type that has been onboarded to private link service. */
@Fluent
public final class ShareablePrivateLinkResourceProperties {
    /*
     * The description of the resource type that has been onboarded to private link service
     */
    @JsonProperty(value = "description")
    private String description;

    /*
     * The resource provider group id for the resource that has been onboarded to private link service
     */
    @JsonProperty(value = "groupId")
    private String groupId;

    /*
     * The resource provider type for the resource that has been onboarded to private link service
     */
    @JsonProperty(value = "type")
    private String type;

    /** Creates an instance of ShareablePrivateLinkResourceProperties class. */
    public ShareablePrivateLinkResourceProperties() {
    }

    /**
     * Get the description property: The description of the resource type that has been onboarded to private link
     * service.
     *
     * @return the description value.
     */
    public String description() {
        return this.description;
    }

    /**
     * Set the description property: The description of the resource type that has been onboarded to private link
     * service.
     *
     * @param description the description value to set.
     * @return the ShareablePrivateLinkResourceProperties object itself.
     */
    public ShareablePrivateLinkResourceProperties withDescription(String description) {
        this.description = description;
        return this;
    }

    /**
     * Get the groupId property: The resource provider group id for the resource that has been onboarded to private link
     * service.
     *
     * @return the groupId value.
     */
    public String groupId() {
        return this.groupId;
    }

    /**
     * Set the groupId property: The resource provider group id for the resource that has been onboarded to private link
     * service.
     *
     * @param groupId the groupId value to set.
     * @return the ShareablePrivateLinkResourceProperties object itself.
     */
    public ShareablePrivateLinkResourceProperties withGroupId(String groupId) {
        this.groupId = groupId;
        return this;
    }

    /**
     * Get the type property: The resource provider type for the resource that has been onboarded to private link
     * service.
     *
     * @return the type value.
     */
    public String type() {
        return this.type;
    }

    /**
     * Set the type property: The resource provider type for the resource that has been onboarded to private link
     * service.
     *
     * @param type the type value to set.
     * @return the ShareablePrivateLinkResourceProperties object itself.
     */
    public ShareablePrivateLinkResourceProperties withType(String type) {
        this.type = type;
        return this;
    }

    /**
     * Validates the instance.
     *
     * @throws IllegalArgumentException thrown if the instance is not valid.
     */
    public void validate() {
    }
}


Facebook, Instagram and WhatsApp are to be back online.
As of 9 a.m. eastern time Sunday, all were back up and running.
Downdetector.com, a site that monitors site outages, shows Facebook went down around 6:30 a.m. in much of the world.
It's still not clear what caused the outage but Newstalk 1010 Tech expert Marc Salzman says no one lost any information.
"This is all what we call in the cloud," says Salzman. "All of your photos, your posts, your comments are on their servers so nothing is at stake here. It's just that you weren't able to access your information for a period of about two and a half hours."
This is the second time Facebook users have experienced an outage in recent memory. The last time was just over a month ago and in that instance, Facebook blamed a server configuration issue for the outage that affected significant parts of North America and Europe.
"Not everyone knows that Facebook owns Instagram and Whatsapp," says Salzman. "Keep in mind if it's something on the infrastructure side like a server configuration issue, that could impact the other networks they own.
Salzman also notes that the timing of the problem worked to Facebook's advantage, as it was not during peak usage hours.


The party has taken on work guarding patient caravans heading to Mountainview when a terrible storm forces them to hole up in a nearby waypoint; an abandoned castle.
The party has taken on work guarding patient caravans heading to Mountainview when a terrible storm forces them to hole up in a nearby waypoint; an abandoned castle. As the night wears on, strange creatures from the Valley of Bones begin to assail the castle. The party must protect their patients and fend off the attackers until the storm breaks. Castles & Chemo, Inc., is a 501(c)3 nonprofit organization, dedicated to raise money for cancer research and support in an effort to make cancer a relic of the past through the use of tabletop role playing games, both by publishing game supplements and organizing & running fundraising events, both in the United States and abroad.


text:
Phil Sharp
1980 (aged 68–69)
Barbara Avedon (divorced)[1]
Phil Sharp (1911 – 1980)[2] was an American producer and screenwriter. He won an Primetime Emmy Award and was nominated for one more in the category Outstanding Writing for a Comedy Series, for his work on the television programs, The Phil Silvers Show and All in the Family.[3] Sharp died of a heart attack in 1980.[2]
^ Hayward, Anthony (October 23, 2011). "Obituary: Barbara Avedon". The Independent. Archived from the original on 2022-05-26. Retrieved October 23, 2021.
^ a b Tucker, David (March 24, 2014). Joan Davis: America's Queen of Film, Radio and Television Comedy. McFarland. p. 163. ISBN 9780786477845 – via Google Books.
^ "Phil Sharp". Television Academy. Retrieved October 23, 2021.
Phil Sharp at IMDb
Primetime Emmy Award for Outstanding Writing for a Comedy Series
James Allardice & Jack Douglas & Hal Kanter & Harry Winkler for The George Gobel Show (1955)
Arnold M. Auerbach & Barry Blitzer & Vincent Bogert & Nat Hiken & Coleman Jacoby & Harvey Orkin & Arnold Rosen & Terry Ryan & Tony Webster for The Phil Silvers Show (1956)
No Award (1957)
Billy Friedberg & Nat Hiken & Coleman Jacoby & Arnold Rosen & A.J. Russell & Terry Ryan & Phil Sharp & Tony Webster & Sydney Zelinka for The Phil Silvers Show (1958)
George Balzer & Hal Goldman & Al Gordon & Sam Perrin for The Jack Benny Show (1959)
Dave O'Brien & Martin Ragaway & Sherwood Schwartz & Al Schwartz & Red Skelton for The Red Skelton Show (1961)
Carl Reiner for The Dick Van Dyke Show (1962)
Sam Denoff & Bill Persky for "Coast to Coast Big Mouth" (1966)
Buck Henry & Leonard B. Stern for "Ship of Spies: Parts 1 and 2" (1967)
Allan Burns & Chris Hayward for "The Coming Out Party" (1968)
James L. Brooks & Allan Burns for "Support Your Local Mother" (1971)
Burt Styler for "Edith's Problem" (1972)
Lee Kalcheim & Michael Ross & Bernie West for "The Bunkers and the Swingers" (1973)
Treva Silverman for "The Lou and Edie Story" (1974)
Stan Daniels & Ed. Weinberger for "Will Mary Richards Go to Jail?" (1975)
David Lloyd for "Chuckles Bites the Dust" (1976)
James L. Brooks & Allan Burns & Stan Daniels & Bob Ellison & David Lloyd & Ed. Weinberger for "The Last Show" (1977)
Harve Brosten & Barry Harman & Bob Schiller & Bob Weiskopf for "Cousin Liz" (1978)
R.J. Colleary for "The Photographer" (1980)
Michael J. Leeson for "Tony's Sister and Jim" (1981)
Ken Estin for "Elegant Iggy" (1982)
Glen Charles and Les Charles for "Give Me a Ring Sometime" (1983)
David Angell for "Old Flames" (1984)
Ed. Weinberger & Michael J. Leeson for "Pilot" (The Cosby Show) (1985)
Barry Fanaro & Mort Nathan for "A Little Romance" (1986)
Gary David Goldberg & Alan Uger for "A, My Name is Alex" (1987)
Hugh Wilson for "The Bridge" (1988)
Diane English for "Pilot" (Murphy Brown) (1989)
Bob Brush for "Good-bye" (1990)
Gary Dontzig & Steven Peterman for "Jingle Hell, Jingle Hell, Jingle All the Way" (1991)
Elaine Pope & Larry Charles for "The Fix-Up" (1992)
Larry David for "The Contest" (1993)
David Angell & Peter Casey & David Lee for "The Good Son" (1994)
Chuck Ranberg & Anne Flett-Giordano for "An Affair to Forget" (1995)
Joe Keenan & Christopher Lloyd & Rob Greenberg & Jack Burditt & Chuck Ranberg & Anne Flett-Giordano & Linda Morris & Vic Rauseo for "Moon Dance" (1996)
Ellen DeGeneres & Mark Driscoll & Dava Savel & Tracy Newman & Jonathan Stark for "The Puppy Episode" (1997)
Peter Tolan & Garry Shandling for "Flip" (1998)
Jay Kogen for "Merry Christmas, Mrs. Moskowitz" (1999)
Linwood Boomer for "Pilot" (Malcolm in the Middle) (2000)
Alex Reid for "Bowling" (2001)
Larry Wilmore for "Pilot" (The Bernie Mac Show) (2002)
Tucker Cawley for "Baggage" (2003)
Mitchell Hurwitz for "Pilot" (Arrested Development) (2004)
Mitchell Hurwitz & Jim Vallely for "Righteous Brothers" (2005)
Greg Garcia for "Pilot" (My Name Is Earl) (2006)
Greg Daniels for "Gay Witch Hunt" (2007)
Tina Fey for "Cooter" (2008)
Matt Hubbard for "Reunion" (2009)
Steven Levitan & Christopher Lloyd for "Pilot" (Modern Family) (2010)
Steven Levitan & Jeffrey Richman for "Caught in the Act" (2011)
Louis C.K. for "Pregnant" (2012)
Tina Fey & Tracey Wigfield for "Last Lunch" (2013)
Louis C.K. for "So Did the Fat Lady" (2014)
Simon Blackwell & Armando Iannucci & Tony Roche for "Election Night" (2015)
Aziz Ansari & Alan Yang for "Parents" (2016)
Aziz Ansari & Lena Waithe for "Thanksgiving" (2017)
Amy Sherman-Palladino for "Pilot" (The Marvelous Mrs. Maisel) (2018)
Phoebe Waller-Bridge for "Episode 1" (2019)
Dan Levy for "Happy Ending" (2020)
Lucia Aniello, Paul W. Downs and Jen Statsky for "There Is No Line" (2021)
Quinta Brunson for "Pilot" (Abbott Elementary) (2022)
American male screenwriters
American television writers
American male television writers
American comedy writers
American television producers
Primetime Emmy Award winners
American television biography stubs


Low-rise version of the classic sneakers.
Behind the name CTAS Core Canvas Sneakers lie the low-cut version of some cult shoes. There is hardly another sneaker out there to match the timeless design of the Converse All Stars. Light, comfortable and perfect with any style of clothing, Chucks are always the right choice.


text:
Matigramma adoceta is a species of moth in the family Erebidae. It is found in North America.

The MONA or Hodges number for Matigramma adoceta is 8680.3.

References

Further reading

Omopterini
Articles created by Qbugbot
Moths described in 1986

redpajama_set_name: RedPajamaWikipedia


text:
At Detert's request, County Commission delays discussion of cigarette-smoking ban on beaches and in county parks
'Dr. Beach' joins Tobacco Free Partnership chair and Siesta Key Association president in expressing dismay over decision
The fourth discussion item for the Sarasota County Commission's Oct. 11 meeting — following the Consent Agenda of routine business items — entailed a staff presentation on the new state law allowing local governments to ban cigarette smoking on public beaches and in public parks.
Yet, even before the vote on the Consent Agenda, Commissioner Nancy Detert announced that she wanted to delay the smoking ban discussion. Chair Alan Maio noted that she meant "continue it" until a later date.
Maio also told the other commissioners that Detert had indicated to him that she wanted to learn how other jurisdictions are acting on the new state law before the Sarasota County commission addresses it.
"I think we need some public awareness about it," Detert added. "I'd just like a full airing on the details."
Nicole Rissler, director of the county's Parks, Recreation and Natural Resources Department (PRNR), had told her, Detert continued, that the presentation that had been planned for Oct. 11 could wait until November.
Detert further noted that the county's Tourist Development Council (TDC), which she chairs, was scheduled to take up the smoking-ban issue during its Oct. 13 meeting. (That session took place too late in the day for The Sarasota News Leader to report on it this week.)
Although county staff released the Oct. 13 Tourist Development Council agenda last week, the backup materials did not include anything related to the smoking-ban presentation.
After Detert made her comments on Oct. 11, Commissioner Christian Ziegler said, "I'm OK with [the delay]. I know there's a lot of people that want to ban smoking at our beaches." However, he continued, "It's important for the public to understand what's going on …"
The County Commission has three options, Ziegler pointed out:
Implement a full ban on cigarette smoking on county-owned beaches and in county parks.
Implement a ban but allow designated smoking areas for people visiting the beaches and the parks.
Continue to allow cigarette smoking at county beaches and in the parks.
"I would encourage [county residents] to contact us and let us know where they stand on [the issue] and what their views are on it," Ziegler added.
His understanding, he told his colleagues, is that if Rissler of PRNR makes her presentation to them in November, that still would allow for any changes in county regulations to take effect in January, which — he noted — staff had indicated was its goal.
With no further comments from commissioners, Maio announced the consensus for continuing the Oct. 11 agenda item.
City Commission approves cigarette-smoking bans
On Oct. 3, the Sarasota City Commission conducted its second reading of two ordinances that ban cigarette smoking — for North Lido Beach, which is the only part of the shoreline within its jurisdiction, and an ordinance governing smoking in city parks. They approved the measures on unanimous votes.
City Attorney Robert Fournier told the News Leader in an Oct. 5 email that he and his staff are recommending that warnings be issued for the first 60 days, or perhaps longer, to make certain that the changes in the city regulations become public knowledge and to allow for the erection of new signage.
The new state law did carve out an exception for the smoking of unfiltered cigars. Therefore, the city ordinances make it clear that the bans do not affect that action.
The city commissioners previously had agreed to specify designated smoking areas for people, with the parking lot for North Lido to serve that purpose at the beach.
At the City Commission's request, its Parks, Recreation and Environmental Protection Advisory Board on Sept. 15 addressed the issue of designated smoking areas in the parks. The PREP board members voted 5-1 to recommend that the City Commission allow certain areas in parks with parking lots to be used by smokers. A draft resolution to that effect likely will come before the City Commission for a vote in November, City Attorney Fournier added in his email to the News Leader.
Disappointed advocates question County Commission action
When the News Leader on Oct. 11 contacted Catherine Luckner, president of the Siesta Key Association (SKA), about the County Commission discussion, she questioned the board members' motivation for not proceeding with a cigarette-smoking prohibition on the beaches.
"We've been waiting for this for a very long time," Luckner said, "and I don't understand why we don't already have [a new county regulation]." She referenced the City Commission's quick actions to implement the city's ordinances.
Luckner also reminded the News Leader that when "Dr. Beach" — Stephen Leatherman, a professor in the Earth and Environment program at Florida International University in Miami — first named Siesta Key Beach No. 1 in the United States, in 2011, that accolade was based largely on the fact that cigarettes were banned on the county's beaches at the time.
Then, following a 12th Judicial Circuit Court decision in December 2012, which found local government prohibitions on smoking to be a violation of state law, Luckner added, "We were all shocked to suddenly have someone say we are not [a no-smoking beach]."
That ruling by Circuit Judge Maryann Boehm came in a case involving the City of Sarasota's original no-smoking ordinance.
The status of Siesta Key Beach as a no-smoking facility "got us a very positive worldwide reputation," Luckner continued. "Been there, done it, and let's have it back," she said of the ban.
Luckner did say she wondered whether the commissioners are concerned that a cigarette-smoking prohibition would make them appear to be restricting people's freedoms. Her retort to that, she emphasized, is, "I believe in the freedom to breathe."
In response to the News Leader's request for comment, as well, Leatherman — "Dr. Beach" — wrote in an Oct. 12 email, "I don't understand the delay by Commissioner Nancy Detert because this issue has been in the news for quite a while.
"In fact," Leatherman pointed out, as Luckner had, "Siesta Beach was previously no smoking as established by the Sarasota County Commission some years ago.
"I certainly hope that the Commission moves ahead with making Sarasota beaches cleaner and healthier," Leatherman concluded his email.
The News Leader also contacted Charles Denault, chair of the Tobacco Free Partnership (TFP) Sarasota County, about the board's action this week. Denault replied in an Oct. 12 email, "Here at the TFP, we're disappointed that the county commissioners have delayed the ban of cigarettes in parks and beaches. But given that Hurricane Ian has disrupted so many people's lives throughout the county, a little more time to draft the ordinance seems reasonable. Of course since Sarasota County had a smoking ban in place several years ago," he added, "we don't think it should take the staff long to complete their review. We look forward to discussing the ban at the next meeting of commissioners."
Categories Beaches, City of Sarasota, Environmental News, Health & Medicine, Nonprofit News, Parks and Recreation, Political News, Sarasota County, Siesta Key, State Government, Tourism Tags Tinypass
On Oct. 17, recycling collections to resume in unincorporated Sarasota County
County's Emergency Rental Assistance Program gets another $2.5 million from U.S. Treasury


The man from Donny brings ruff and ready hybrids to his Deep Soul EP.
Doncaster native Mella Dee has been making significant noise for a while now. As one half of Mista Men with fellow local Woozee, he crafted no-nonsense dancefloor cuts that drew from the 4×4 garage and bassline sounds ubiquitous in the north at the time. As a solo artist, he blessed the inaugural Coyote Records release in 2012, before bringing his take on the echoes of UK sound system culture to a variety of labels, including Shy FX's Digital Soundboy, Redlight's Lobster Boy and Omena Records.
The Deep Soul EP is out April 15 on DEXT Recordings. Pre-order it here.


Add extra protection to you Full cover.
Marine security is a constant problem and we are frequently asked if there is anything we can do to help protect an outboard. Whilst any fabric cover can be removed with a good pair of scissors, the addition of a cover to keep potential thieves guessing can help. If they can't see what is inside they are more likely to move on to something more obvious.
We are also able to add a locking facility to our Full covers. This is an eye in the leg strap allowing the cover to be padlocked onto the engine. A lot of outboard theft is planned by teams who steal the motors to order. If they can't see what type it is they are more likely to move on to one they can easily get to.
Our locking eye is not the total solution but will help. The cover will also be badly damaged if anybody tries to steal it.
Did you know each Outboard Cover sold by us has a white tag sewn into the lining that has an individual number on it? If you know your number & you might suspect someone of theft you can check to see if your numbers are sewn into the cover. This is great for insurance claims as well.


As an architectural firm committed to the environment, we use each project as an opportunity to evolve a sustainable architecture design that is kind to natural resources and also minimises the impact of buildings on both their users and on the immediate and wider environment.
The quality of our services is backed by the Certification ISO 14006:2011 Environmental management systems – Guidelines for incoporating ecodesign, provided by TÜV Rheinland.
The Vincci Gala Hotel is one of the first hotels in Barcelona to be rated A, according to the energy labelling for buildings.
One of the main factors affecting energy consumption in hotels is the heating of domestic hot water. Keeping this in mind, and instead of implementing the standard solution with solar panels, TBI proposed to the client an innovative cogeneration system to provide air conditioning for the hotel, consisting of gas heat pumps that rely on natural gas to fuel their operation. By means of a heat exchanger, the heat produced by the engine is used to obtain domestic hot water.
This solution allowed a considerable reduction of CO2 emissions, from 305 to 85 kg CO2 / sqm per annum, as well as a decrease of energy consumption, from 503,8 to 144,5 kWh / sqm per annum, compared to a similar building.
Click here to see the energy label of Hotel Vincci Gala.


Matt's training systems and nutritional programs have helped hundreds of athletes improve athletic performance to: break through their ability plateaus; achieve peak strength, explosive power, agility and quickness; or, rehabilitate after injuries.
Matt Nichol has been an invaluable resource for me, not only by providing in-season workouts, but also providing insight into nutrition and supplementation to maximize my health throughout the season. When I met Matt I was immediately impressed by his vast knowledge of not only strength and conditioning, but also nutrition, rehabilitation techniques and overall health matters. He has a tremendous understanding of the rigors and demands of an NHL season. He would be a huge asset to anyone looking to improve their performance, whether it's through individualized workouts, specific nutrition advice or a comprehensive rehab program. I believe that through Matt's guidance, he can help any athlete maximize their potential. Matt will always be a trusted resource throughout my career and beyond.
Matt, you helped me to do something that nobody else believed was possible….You gave me my career back!
I met Matt in 2006 after having surgery for a Sports Hernia. I was scared to death about my recovery, I thought to myself, "Will I be able to come back?" "Will I ever be the same player again?" Matt quickly alleviated my fears because of his extensive re-hab knowledge. His re-hab techniques were on the "cutting edge" and not only did I come back…I came back stronger than ever! I highly recommend Matt to anyone who is looking to get better – whether its re-habbing an injury or improving performance. Matt will have the best and most cutting edge answers for you and your needs. You want the best? You got the best in Matt Nichol!
Within three weeks of starting training with Matt, I was hitting new personal bests in the gym, and saw my new strength translating into speed whether I was doing distance work or intervals in my racing chair.
Matt is very knowledgeable and uses many different techniques to reach the goals that are set by both trainer and athlete/client. Training with Matt was hard work but it was alot of fun too. There was lots of sweat, and pain but there was always laughter in the gym and out on the track and those laughs were what kept me going on the hard days! He showed me that I can do just about anything that I put my mind to, helping me to set goals that were attainable and then setting new ones once the first were accomplished. Matt is a hard worker, a great trainer and always has his client's best interests in mind and I thank him for helping me reach my goals in his programs and in my everyday life.
Without the knowledge and expertise of Matt Nichol as my personal trainer I would not have had the pleasure of playing in and winning, the 2004 Grey Cup Championship. His ability to adjust to my needs as an athlete allowed me to make a full recovery from an injury plagued 2003 season and to finally achieve my potential, not missing any time due to injury this year and being able to lead the team in receiving yardage the last two games of the season . His professional attitude and passion for his clients is contagious and has contributed to my development as a professional athlete. You will definitely find yourself "preaching the word of Matt" (as I like to put it), once he has passed on his knowledge to you. His programs are innovative, progressive and eventually give the client a better understanding of their body and what it means to be healthy. Thanks Matt, I could not have done it with out you!
"I emphasize to my clients the importance of being well-rounded athletes. Basic athleticism, first and foremost, is being able to move in multiple directions, being strong, powerful, fast and fit. These characteristics set the foundation for continuous athletic improvement, sustained peak performance and injury prevention in any sport!"


text:
March 24: Oppenheimer security hearing
March 25: Uncle David
March 23: Nuckelavee
English Wikipedia Article of the Day
24 Mar 2016 24 Mar '16
The Oppenheimer security hearing (1954) of the US Atomic Energy Commission (AEC) explored the background, actions and associations of J. Robert Oppenheimer (pictured). He had headed the Los Alamos Laboratory during World War II, where he played a key part in the Manhattan Project that developed the atomic bomb. Doubts about Oppenheimer's loyalty dated back to the 1930s, when he was associated with Communist Party USA members, including his wife and his brother. At Los Alamos and in the AEC, he was involved in bureaucratic conflict between the Army and Air Force over the types of nuclear weapons the country required, technical conflict between the scientists over the feasibility of the hydrogen bomb, and personal conflict with AEC commissioner Lewis Strauss. The panel found that he was loyal and discreet with atomic secrets, but did not recommend that his security clearance be reinstated. This ended his role in government and policymaking. He became an academic exile, cut off from his former career and the world he had helped to create. The findings were seen as fair by some and as an expression of anti- Communist McCarthyism by others. Read more: <https://en.wikipedia.org/wiki/Oppenheimer_security_hearing> _______________________________ Today's selected anniversaries: 1603: King James VI of Scotland acceded to the thrones of England and Ireland, becoming James I of England and unifying the crowns of the kingdoms for the first time. <https://en.wikipedia.org/wiki/James_VI_and_I> 1869: The last of Māori leader Titokowaru's forces surrendered to the New Zealand government, ending his uprising. <https://en.wikipedia.org/wiki/Titokowaru%27s_War> 1934: The Tydings–McDuffie Act came into effect, which provided for self-government of the Philippines and for Filipino independence from the United States after a period of ten years. <https://en.wikipedia.org/wiki/Tydings%E2%80%93McDuffie_Act> 1989: The tanker Exxon Valdez spilled more than 10 million US gallons of oil into Prince William Sound, Alaska, causing one of the most devastating man-made environmental disasters at sea. <https://en.wikipedia.org/wiki/Exxon_Valdez_oil_spill> 2015: The co-pilot of Germanwings Flight 9525 deliberately crashed the aircraft in a mass murder–suicide in the French Alps, killing all 150 people on board. <https://en.wikipedia.org/wiki/Germanwings_Flight_9525> _____________________________ Wiktionary's word of the day: escapology: The study or art of escaping from a constriction, such as a rope, handcuffs, etc. <https://en.wiktionary.org/wiki/escapology> ___________________________ Wikiquote quote of the day: When we estrange ourselves from history we do not enlarge, we diminish ourselves, even as individuals. We subtract from our lives one meaning which they do in fact possess, whether we recognize it or not. We cannot help living in history. We can only fail to be aware of it. If we are to meet, endure, and transcend the trials and defeats of the future — for trials and defeats there are certain to be — it can only be from a point of view which, seeing the future as part of the sweep of history, enables us to establish our place in that immense procession in which is incorporated whatever hope humankind may have. --Robert Heilbroner <https://en.wikiquote.org/wiki/Robert_Heilbroner>
daily-article-l@lists.wikimedia.org


text:
How Husband-Wife Team Built $12 Billion Fortune With A Startup
Canva users have created more than 7 billion designs, but Perkins wants it to become ubiquitous. That includes ultimately replacing PDF resumes with responsive web-based tools.
It all began with millennial angst at user-unfriendly software.
While teaching design programs part-time in 2008 when she was at university in Perth, Australia, Melanie Perkins grew frustrated with the clunky desktop-based tools she was helping her students understand.
"Facebook was taking off at the time - people could jump in and use that so easily and yet design tools took years of training to learn," Perkins recalled in a Medium post in 2018. "I wanted to make design software simple, online and collaborative."
It was a winning formula. A funding round last week valued their graphic design company, Canva, at $40 billion. That gave Perkins, 34, and her husband and co-founder Cliff Obrecht, 35, a fortune of $5.9 billion each, according to the Bloomberg Billionaires Index.
The latest funding round makes the Sydney-based firm the fifth-largest startup in the world, according to data from research firm CB Insights, and Perkins the richest self-made female billionaire under the age of 40. Among Canva's investors are Franklin Templeton and Sequoia Capital Global Equities.
'Right Direction'
Perkins and Obrecht, who married earlier this year, said in an interview this week that they aren't slowing down. "We want to build one of the world's most valuable companies," said Perkins, who is chief executive officer. "We're moving in the right direction, but we're not there yet.''
She and Obrecht own at least 30% of the company, Perkins disclosed in a Medium post that accompanied news of the company's valuation. A former Google employee, Cameron Adams, is also a co-founder, though the size of his stake hasn't been disclosed.
A Canva spokesperson, Lachlan Andrews, declined to comment.
Canva is popular with bloggers, students and marketers who can select templates and then customize them to make logos, resumes, flyers or even T-shirt designs. Its tools are used by more than 10 million students and teachers, as well as companies including American Airlines Group Inc., Zoom Video Communications Inc., SkyScanner, Intel Corp., Salesforce.com Inc., PayPal Holdings Inc. and Marriott International Inc., according to Perkins. Canva says that it's on track to surpass $1 billion in annualized revenue by year-end.
Tech Billionaires
The pair's new fortune makes them the 9th- and 10th-richest people in Australia, according to the Bloomberg index. While the country's fortunes have long been linked to commodities industries, Perkins and Obrecht join a group that's topped by fellow tech founders Mike Cannon-Brookes and Scott Farquhar of Atlassian, a software-development company.
Perkins also becomes Australia's second-richest woman after Gina Rinehart, 67, who has a net worth of $17.9 billion derived largely from an iron-ore business.
In her latest Medium post, Perkins vowed that she and Obrecht would donate the vast majority of their Canva equity. The couple plans to direct its giving through the Canva Foundation, and announced a program with nonprofit GiveDirectly that will distribute $10 million to the poor in Southern Africa.
"It has felt strange when people refer to us as billionaires as it has never felt like our money," Perkins said in a statement. "We've always felt that we're purely custodians of it. It's long been our intention to give the wealth away."