Error message

  • Deprecated function: Return type of DatabaseStatementBase::execute($args = [], $options = []) should either be compatible with PDOStatement::execute(?array $params = null): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in require_once() (line 2244 of /home/davshe50/learnscienceandmathclub.org/includes/database/database.inc).
  • Deprecated function: Return type of DatabaseStatementEmpty::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in require_once() (line 2346 of /home/davshe50/learnscienceandmathclub.org/includes/database/database.inc).
  • Deprecated function: Return type of DatabaseStatementEmpty::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in require_once() (line 2346 of /home/davshe50/learnscienceandmathclub.org/includes/database/database.inc).
  • Deprecated function: Return type of DatabaseStatementEmpty::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in require_once() (line 2346 of /home/davshe50/learnscienceandmathclub.org/includes/database/database.inc).
  • Deprecated function: Return type of DatabaseStatementEmpty::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in require_once() (line 2346 of /home/davshe50/learnscienceandmathclub.org/includes/database/database.inc).
  • Deprecated function: Return type of DatabaseStatementEmpty::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in require_once() (line 2346 of /home/davshe50/learnscienceandmathclub.org/includes/database/database.inc).
  • Deprecated function: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in drupal_random_bytes() (line 2268 of /home/davshe50/learnscienceandmathclub.org/includes/bootstrap.inc).
  • Deprecated function: Return type of DateObject::__wakeup() should either be compatible with DateTime::__wakeup(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 143 of /home/davshe50/learnscienceandmathclub.org/sites/all/modules/date/date_api/date_api.module).
  • Deprecated function: Return type of DateObject::format($format, $force = false) should either be compatible with DateTime::format(string $format): string, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 143 of /home/davshe50/learnscienceandmathclub.org/sites/all/modules/date/date_api/date_api.module).
  • Deprecated function: Return type of DateObject::setTimezone($tz, $force = false) should either be compatible with DateTime::setTimezone(DateTimeZone $timezone): DateTime, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 143 of /home/davshe50/learnscienceandmathclub.org/sites/all/modules/date/date_api/date_api.module).
  • Deprecated function: rtrim(): Passing null to parameter #1 ($string) of type string is deprecated in url() (line 2349 of /home/davshe50/learnscienceandmathclub.org/includes/common.inc).
  • Deprecated function: mb_substr(): Passing null to parameter #1 ($string) of type string is deprecated in drupal_substr() (line 593 of /home/davshe50/learnscienceandmathclub.org/includes/unicode.inc).
  • Deprecated function: Return type of RulesRecursiveElementIterator::hasChildren() should either be compatible with RecursiveIterator::hasChildren(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 2095 of /home/davshe50/learnscienceandmathclub.org/sites/all/modules/rules/includes/rules.core.inc).
  • Deprecated function: Return type of RulesRecursiveElementIterator::getChildren() should either be compatible with RecursiveIterator::getChildren(): ?RecursiveIterator, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 2095 of /home/davshe50/learnscienceandmathclub.org/sites/all/modules/rules/includes/rules.core.inc).
  • Deprecated function: Return type of RulesContainerPlugin::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 2109 of /home/davshe50/learnscienceandmathclub.org/sites/all/modules/rules/includes/rules.core.inc).
  • Deprecated function: strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in url_is_external() (line 2393 of /home/davshe50/learnscienceandmathclub.org/includes/common.inc).
  • Deprecated function: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in url_is_external() (line 2395 of /home/davshe50/learnscienceandmathclub.org/includes/common.inc).
  • Deprecated function: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in url() (line 2311 of /home/davshe50/learnscienceandmathclub.org/includes/common.inc).

Resources

Because most kids (and grown-ups) learn best from experience, our programs rely heavily on hands-on activities.  Whether theyre competing in FIRST LEGO League or doing chemistry experiments, we ask our kids to dig in and get their hands dirty.  And, it works!  They rarely think of all the time they spend in the classroom as learning; they're having way too much fun.

When we started out in 2004, though, we felt pretty flat-footed.  That first day, when we stood – without body armor or a shield of any kind – holding boxes of LEGO robots before a group of forty drooling kindergarten through fourth graders, we knew we were in trouble!  How could we best help these kids learn all the things they needed to be great robot designers, programmers, strategists, researchers, presenters and teammates?  (And, believe us when we say the techical aspects are the easy part...teaching the other skills proved far more challenging.) 

We survived and learned a lot along the way with the help of great books and great teachers.  So, we'd like to pass it forward to you and your kids.  In the following sections, you'll find lists of resources we've found invaluable over the years.